问题描述:
avue 表单自定义标题,官方文档可以生效,项目中不生效。多方排查发现,当prop含有大写字母时失效。
代码展示:
<avue-form v-model="form" :option="option">
<template #className-label="{}">
<el-tooltip class="item"
effect="dark"
content="文字提示"
placement="top-start">
<span>班级</span>
</el-tooltip>
</template>
</avue-form>
const option = ref({
column: [
{
label: '班级名称',
prop: 'className',
},
],
})
解决方法:
#className-label="{}" 改为 #classname-label="{}"
原理: html5规范规定, 写在html标签中的属性必须是小写(如果在JS中则是驼峰命名), 所以vue应该也是遵循这一规定, className-label其实会转成classname-label。
实现效果: