按照Vue 官方文档 ,试验自定义指令,结果提示warning
问题复现步骤:
- 按照Vue 官方文档 定义局部自定义指令
实例的js部分代码
directives: {
focus: {
// 指令的定义
inserted: function (el) {
el.focus()
}
}
}
实例的html代码
<input v-focus>
- 启动开发脚本
npm run dev
,观察终端提示 - 终端显示内容如下
WARNING Compiled with 1 warnings 17:49:50
warning in ./src/pages/codeDetail/index.vue
(Emitted value instead of an instance of Error) - 不支持此属性-> v-focus=""
@ ./src/pages/codeDetail/index.vue 8:0-328
@ ./src/pages/codeDetail/main.js
期望的表现:
期待编译时不会给出警告,并且自定义指令的功能好用
观察到的表现:
编译时提示警告,并且自定义指令的功能不好用
5条答案
按热度按时间v09wglhw1#
好像是不支持吧,官方文档也没把不支持的都列出来,坑....
xvw2m8pv2#
我也是写了这个,npm run 的时候提示警告,inserted 里面打了 console.log 也没见输出
yks3o0rb3#
查看源码是执行了注册的。
另外定义local的directive也会直接报错。
应该是在执行template syntax时候没有用上。
nafvub8i4#
issue超过30天无更新或响应,7天后将自动关闭,如果问题状态有更新请及时更新issue
yrwegjxp5#
我试过了,在标签上写指令不行跟你一样的问题。感觉只能写个mixin了