关于修饰器的几个问题
来源:4-1 什么是注解
缱绻091
2020-05-11
- target 是个字典么?我打断点显示 key 的值为"result"。如果是的话,在页面上的{{result}} 双向绑定是否可以理解为是通过这里的key-value 建立起来的联系?
- key:string | symbol 后面的这个symbol 是干什么的?我试验了一下,去掉了也没有什么影响。
- 装饰器 @Emoji() 后面可以跟 result = ’ ’ , 但是@Confirmable(‘已经点击,是否确认执行?’) 后面连个; 都不能有,会报错,这是什么原理?是否是因为Emoji 里面有get set 方法?
谢谢解答!
写回答
1回答
-
target 是注解的目标对象,你可以自己实验一下,设置断点,看一下这个 target,在课程中target 其实就是组件,key 是你应用注解的变量叫什么就是什么,不一定是 result,你把变量改成 greeting,这个 key 就是 greeting
symbol 是一种数据类型,可以参考一下 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Symbol 去理解一下这种类型。
string | symbol 表示类型是 string 或 symbol
Confirmable 是要修饰一个方法,而不是变量,看一下 Confirmable 的源码,他是在执行原有方法前做了弹窗处理。
012020-05-13
相似问题