猿问

vue2 的变量引用问题

问题1:我在beforeCreate()里面调用init的方法,想给uivalue赋值,uivalue被用在v-model,结果发现个奇怪的问题:


   

     console.log(this);

     console.log(this.uiValue);

     console.log(uiValue);

     uiValue= {...dispatchOptionVO}

     

  以上代码结果是:   VueComponent {uiValue:xxx}

                    undefined

                    undefined .

为什么第一个this里面能看见uiValue的值,第二个this.uiValue反而看不见。


蓝山帝景
浏览 1137回答 3
3回答

慕森王

这是因为对象的值打印在控制台上并不仅仅是当前的值,后续的变化也会影响他的结果

炎炎设计

打印this是vue对象,当然有值。而uiValue没有定义,当然undefined;

慕少森

console这个对象是由宿主环境来实现的~ 如果你在多个浏览器使用console.log(this.uiValue)的话,你还会发现有不一样的显示结果~
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答