1、resolveDirective
如果在当前应用实例中可用,则允许通过其名称解析一个directive。
返回一个Directive,如果没有找到,则返回undefined
只能在render或setup函数中使用。
const app = Vue.createApp({})
app.directive('highlight', {})
import { resolveDirective } from 'vue'
render () {
const highlightDirective = resolveDirective('highlight')
}
2、withDirectives
允许将指令应用于VNode,返回一个包含应用指令的VNode。
withDirectives只能在render或setup函数中使用。
withDirectives(vnode,directives)
directives:[[directive, value, arg, modifiers],[...]]
value: 例如:v-my-directive="1 + 1" 中,绑定值为 2。
arg: 例如 v-my-directive:foo 中,参数为 "foo"。
modifiers: 例如:v-my-directive.foo.bar 中,修饰符对象为 { foo: true, bar: true }。
const MyDirective = resolveDirective('MyDirective')
const nodeWithDirectives = withDirectives(h('div'),[[MyDirective, 100, 'click', { prevent: true }]])
vue3.0 resolveDirective、withDirectives
最新推荐文章于 2024-09-19 10:22:35 发布