日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)VUE3教程:Vue3.0DataProperty和方法

#Data Property

組件的 data 選項是一個函數(shù)。Vue 在創(chuàng)建新組件實例的過程中調(diào)用此函數(shù)。它應(yīng)該返回一個對象,然后 Vue 會通過響應(yīng)性系統(tǒng)將其包裹起來,并以 $data 的形式存儲在組件實例中。為方便起見,該對象的任何頂級 property 也直接通過組件實例暴露出來:

const app = Vue.createApp({
  data() {
    return { count: 4 }
  }
})


const vm = app.mount('#app')


console.log(vm.$data.count) // => 4
console.log(vm.count)       // => 4


// 修改 vm.count 的值也會更新 $data.count
vm.count = 5
console.log(vm.$data.count) // => 5


// 反之亦然
vm.$data.count = 6
console.log(vm.count) // => 6

這些實例 property 僅在實例首次創(chuàng)建時被添加,所以你需要確保它們都在 data 函數(shù)返回的對象中。必要時,要對尚未提供所需值的 property 使用 null、undefined 或其他占位的值。。

直接將不包含在 data 中的新 property 添加到組件實例是可行的。但由于該 property 不在背后的響應(yīng)式 $data 對象內(nèi),所以 Vue 的響應(yīng)性系統(tǒng)不會自動跟蹤它。

Vue 使用 $ 前綴通過組件實例暴露自己的內(nèi)置 API。它還為內(nèi)部 property 保留 _ 前綴。你應(yīng)該避免使用這兩個字符開頭的的頂級 data property 名稱。

#方法

我們用 methods 選項向組件實例添加方法,它應(yīng)該是一個包含所需方法的對象:

const app = Vue.createApp({
  data() {
    return { count: 4 }
  },
  methods: {
    increment() {
      // `this` 指向該組件實例
      this.count++
    }
  }
})


const vm = app.mount('#app')


console.log(vm.count) // => 4


vm.increment()


console.log(vm.count) // => 5

Vue 自動為 methods 綁定 this,以便于它始終指向組件實例。這將確保方法在用作事件監(jiān)聽或回調(diào)時保持正確的 this 指向。在定義 methods 時應(yīng)避免使用箭頭函數(shù),因為這會阻止 Vue 綁定恰當(dāng)?shù)?this 指向。

這些 methods 和組件實例的其它所有 property 一樣可以在組件的模板中被訪問。在模板中,它們通常被當(dāng)做事件監(jiān)聽使用:

在上面的例子中,點擊 ` })
新聞名稱:創(chuàng)新互聯(lián)VUE3教程:Vue3.0DataProperty和方法
地址分享:http://www.dlmjj.cn/article/cogjooh.html