|
@@ -0,0 +1,28 @@
|
|
|
+import { createApp } from 'vue'
|
|
|
+
|
|
|
+const app = createApp({
|
|
|
+ /* ... */
|
|
|
+})
|
|
|
+
|
|
|
+// 注册(对象形式的指令)
|
|
|
+app.directive('noMoreClick', {
|
|
|
+ /* 自定义指令钩子 */
|
|
|
+ inserted(el, binding) {
|
|
|
+ el.addEventListener('click', e => {
|
|
|
+ el.classList.add('is-disabled')
|
|
|
+ el.disabled = true
|
|
|
+ setTimeout(() => {
|
|
|
+ el.disabled = false
|
|
|
+ el.classList.remove('is-disabled')
|
|
|
+ }, 2000)//我这里设置的是2000毫秒也就是2秒
|
|
|
+ })
|
|
|
+ }
|
|
|
+})
|
|
|
+
|
|
|
+// 注册(函数形式的指令)
|
|
|
+// app.directive('my-directive', () => {
|
|
|
+
|
|
|
+// })
|
|
|
+
|
|
|
+// 得到一个已注册的指令
|
|
|
+const noMoreClick = app.directive('noMoreClick');
|