在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java  網(wǎng)絡(luò)安全  HTML/ vue實(shí)例中data函數(shù)里 this.examlpe 的數(shù)據(jù)和 return里的

vue實(shí)例中data函數(shù)里 this.examlpe 的數(shù)據(jù)和 return里的數(shù)據(jù) 有區(qū)別嗎?

vue實(shí)例中data函數(shù)里 this.examlpe 的數(shù)據(jù)和 return里的數(shù)據(jù) 有區(qū)別嗎?
以下data(){}中在this上屬性和 return 一個數(shù)據(jù) 有和不同?

{
//...
 data () {
    this.visible1 = null
    return {
      visible2: false,
      //...
    }
  },
}
回答
編輯回答
眼雜

一樓說很清楚了

2018年2月18日 02:29
編輯回答
青裙

沒有,都是指向當(dāng)前vue實(shí)例

2018年9月2日 07:02
編輯回答
局外人

相同點(diǎn):
都是vue 實(shí)例上的對象屬性,都可以通過 this.visible1 或者 this.visible2 訪問。
不同點(diǎn):
this.visible2 也可以通過 this.$data.visible2 訪問。
實(shí)例創(chuàng)建之后,可以通過 vm.$data 訪問原始數(shù)據(jù)對象。Vue 實(shí)例也代理了 data 對象上所有的屬性,因此訪問 vm.visible2 等價于訪問 vm.$data.visible2 具體可以看這里

data 聲明為返回一個初始數(shù)據(jù)對象的函數(shù),就不會被所有的實(shí)例將共享引用,所以每個組件中的數(shù)據(jù),一般通過 visible2 這樣定義。

2017年5月25日 08:21
編輯回答
亮瞎她

說過更通俗的把,如果你通過在data里直接this.xxx定義,而不在return里定義的話,你在methods中修改這個值不會觸發(fā)視圖更新。視圖只會取到初始值。除非使用vue.set

2018年5月9日 14:59
編輯回答
澐染

謝邀

this.xxx 指向當(dāng)前實(shí)例對象 也就是最外層的new Vue 這個實(shí)例對象
而return 出來是當(dāng)前模板的信息 它掛載到該實(shí)例上

2018年1月4日 00:13
編輯回答
選擇
data(){
    return{
        test:123
    }
}

是將vue實(shí)例的數(shù)據(jù)以函數(shù)返回的形式來定義,防止組件間數(shù)據(jù)之間的互相影響。
官方解釋:

當(dāng)一個組件被定義, data 必須聲明為返回一個初始數(shù)據(jù)對象的函數(shù),因?yàn)榻M件可能被用來創(chuàng)建多個實(shí)例。

在其他地方通過this.test來訪問該組件所定義的數(shù)據(jù)test,其中this指向vue實(shí)例,后面就是定義的數(shù)據(jù)。

2017年12月30日 17:16