vue3仿飞书头像,根据不同名称生成不同的头像背景色

效果展示:
传递三个参数:
  • name:要显示的名称;
  • size:头像的大小;
  • cutNum:分割当前名称的最后几位数;
代码如下:
html 复制代码
<template>
	<div
		:style="{
			color: '#fff',
			borderRadius: '50%',
			width: size + 'px',
			height: size + 'px',
			display: 'block',
			textAlign: 'center',
			lineHeight: size + 'px',
			fontSize: size * 0.4 + 'px',
			background: color(name)
		}"
	>
		{{ name.slice(-cutNum) }}
	</div>
</template>

<script lang="ts" setup>
defineProps({
	name: {
		type: String,
		default: ""
	},
	size: {
		type: Number,
		default: 16
	},
	cutNum: {
		type: Number,
		default: 1
	}
});

const color = (name: string) => {
	if (name) {
		let num = "";
		for (let i = 0; i < name.length; i++) {
			num += name[i].charCodeAt(0).toString();
		}
		const r = Math.min(100 + (parseInt(num.slice(0, 2), 10) % 55), 255);
		const g = Math.min(100 + (parseInt(num.slice(2, 4), 10) % 55), 255);
		const b = Math.min(100 + (parseInt(num.slice(4, 6), 10) % 55), 255);
		return `rgb(${r}, ${g}, ${b})`;
	} else {
		return "rgb(125, 125, 125)";
	}
};
</script>
使用代码如下:
<AuthorImage name="铁甲小宝" :size="74" :cut-num="2"></AuthorImage>
相关推荐
轻口味4 天前
DeepSeek + 飞书多维表格搭建你的高效工作流
人工智能·ai·飞书·工作流·智能体·deepseek
winfredzhang5 天前
如何将飞书多维表格与DeepSeek R1结合使用:效率提升的完美搭档
飞书·多维表格·deepseekr1
zyplayer-doc7 天前
知识库适配DeepSeek,企业微信支持自动登录,授权支持过期时间设置,zyplayer-doc 2.4.9 发布啦!
编辑器·飞书·企业微信·开源软件·有道云笔记·石墨文档
爱折磨键盘的大鹏8 天前
飞书考勤Excel导入到自己系统
excel·飞书
Neozsvc11 天前
飞书工单审批对接腾讯电子签:开启合同流程自动化新时代
运维·人工智能·后端·自动化·飞书
come-昂-11 天前
dify绑定飞书多维表格
ai·飞书
蕴微轩11 天前
DeepSeek R1 + 飞书机器人实现AI智能助手
人工智能·语言模型·机器人·飞书·ai编程
提拉米苏不吃肉15 天前
跨平台公式兼容性大模型提示词模板(飞书 + CSDN + Microsoft Word)
microsoft·word·飞书
失败尽常态52315 天前
用Python实现Excel数据同步到飞书文档
python·excel·飞书
落笔画忧愁e15 天前
FastGPT快速将消息发送至飞书
服务器·数据库·飞书