81 lines
2.4 KiB
JavaScript
81 lines
2.4 KiB
JavaScript
import defProps from '../../libs/config/props.js';
|
||
import test from '../../libs/function/test';
|
||
export default {
|
||
props: {
|
||
// 头像图片路径(不能为相对路径)
|
||
src: {
|
||
type: String,
|
||
default: () => defProps.avatar.src
|
||
},
|
||
// 头像形状,circle-圆形,square-方形
|
||
shape: {
|
||
type: String,
|
||
default: () => defProps.avatar.shape
|
||
},
|
||
// 头像尺寸
|
||
size: {
|
||
type: [String, Number],
|
||
default: () => defProps.avatar.size
|
||
},
|
||
// 裁剪模式
|
||
mode: {
|
||
type: String,
|
||
default: () => defProps.avatar.mode
|
||
},
|
||
// 显示的文字
|
||
text: {
|
||
type: String,
|
||
default: () => defProps.avatar.text
|
||
},
|
||
// 背景色
|
||
bgColor: {
|
||
type: String,
|
||
default: () => defProps.avatar.bgColor
|
||
},
|
||
// 文字颜色
|
||
color: {
|
||
type: String,
|
||
default: () => defProps.avatar.color
|
||
},
|
||
// 文字大小
|
||
fontSize: {
|
||
type: [String, Number],
|
||
default: () => defProps.avatar.fontSize
|
||
},
|
||
// 显示的图标
|
||
icon: {
|
||
type: String,
|
||
default: () => defProps.avatar.icon
|
||
},
|
||
// 显示小程序头像,只对百度,微信,QQ小程序有效
|
||
mpAvatar: {
|
||
type: Boolean,
|
||
default: () => defProps.avatar.mpAvatar
|
||
},
|
||
// 是否使用随机背景色
|
||
randomBgColor: {
|
||
type: Boolean,
|
||
default: () => defProps.avatar.randomBgColor
|
||
},
|
||
// 加载失败的默认头像(组件有内置默认图片)
|
||
defaultUrl: {
|
||
type: String,
|
||
default: () => defProps.avatar.defaultUrl
|
||
},
|
||
// 如果配置了randomBgColor为true,且配置了此值,则从默认的背景色数组中取出对应索引的颜色值,取值0-19之间
|
||
colorIndex: {
|
||
type: [String, Number],
|
||
// 校验参数规则,索引在0-19之间
|
||
validator(n) {
|
||
return test.range(n, [0, 19]) || n === ''
|
||
},
|
||
default: () => defProps.avatar.colorIndex
|
||
},
|
||
// 组件标识符
|
||
name: {
|
||
type: String,
|
||
default: () => defProps.avatar.name
|
||
}
|
||
}
|
||
}
|