我正在尝试使用渲染函数
渲染此指令<h2 v-tooltip.top="{ content: 'You have new messages.', classes: 'tooltip-info', offset: 15 }">
some text
</h2>
在函数
中使用此代码return createElement('h2', {
directives: [
{
name: 'v-tooltip',
value: {
content: field.tooltip.content ? field.tooltip.content : field.tooltip,
classes: field.tooltip.class ? field.tooltip.class : 'tooltip-info',
offset: 15,
},
arg: 'top',
},
],
}, [field.title]);
但我收到此错误:
[Vue warn]: Failed to resolve directive: v-tooltip
我错过了什么,字段是可能有内容或类支柱的对象。 所以我设置它们,如果它有或者在else中默认设置。
v-tooltip是这个指令https://github.com/Akryum/v-tooltip
答案 0 :(得分:3)
正如我在评论中提到的,v-tooltip
应更改为tooltip
。
在vuejs中定义指令时,名称不需要v-
前缀:example:
Vue.directive('focus', {
inserted: function (el) {
el.focus()
}
})
然后可以将上述指令称为:
<input v-focus>
<子> source 子>