Vue+TypeScript时,undefined和null有啥区别

这种情况下,tip就能有值

hierarchy: Hierarchy | null = null;

  get tip() {
    return this.hierarchy ? `层级分类定义:${this.hierarchy.name}[${this.hierarchy.code}]` : '';
  }

 open() {
    this.hierarchy = {code: '11', name: '111'}
 }

这种情况下,tip就能就永远没有值

hierarchy: Hierarchy | undefined = undefined;

  get tip() {
    return this.hierarchy ? `层级分类定义:${this.hierarchy.name}[${this.hierarchy.code}]` : '';
  }
  
   open() {
    this.hierarchy = {code: '11', name: '111'}
 }
阅读 2k
1 个回答

代码贴的一样,错了吧。
猜测你是用了 vue-class-component
https://class-component.vuejs...
看这一段:

Note that if the initial value is undefined, the class property will not be reactive which means the changes for the properties will not be detected:

如果未定义初始值,响应式系统将不会生效

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题