// 定義乙個名為 button-counter 的新元件元件是可復用的 vue 例項,且帶有乙個名字:在這個例子中是vue.component('button-counter',
},template: 'you clicked me } times.'
})
。我們可以在乙個通過new vue
建立的 vue 根例項中,把這個元件作為自定義元素來使用:
因為元件是可復用的 vue 例項,所以它們與new vue
接收相同的選項,例如data
、computed
、watch
、methods
以及生命週期鉤子等。
僅有的例外是像el
這樣根例項特有的選項。
當我們定義這個元件時,你可能會發現它的
data
並不是像這樣直接提供乙個物件:
data:取而代之的是,乙個元件的
data
選項必須是乙個函式,因此每個例項可以維護乙份被返回物件的獨立的拷貝:
Vue元件中的data必須是個函式
最近一直在學習vue,今天看到乙個知識點,感覺有必要記錄下,以免後面忘記。每個vue元件其實也可以看成時乙個vue例項,它也有生命週期,data,methods等。其中在vue元件中,data必須是個函式,這是因為 元件是可復用的,我們開發好每個元件後,希望它可以在專案中多個地方使用,但又相互不影響...
為何元件的data必須是乙個函式
首先定義的 xx.vue檔案在編譯之後是乙個類,每個地方使用這個元件的時候,相當於對這個類例項化,在例項化的時候執行data,如果不是乙個函式的話,每個元件的例項的data都是同乙個引用資料,當該元件作為公共元件共享使用,乙個地方的data更改,所有的data一起改變。如果data是乙個函式,每個例...
為什麼Vue元件裡面data必須是個函式
首頁我們先了解乙個原形和原型鏈,每個js物件和js方法都有乙個原形,js物件的是隱式原形 proto,而方法中的是顯示原形prototype,下面舉個例子 export default methods 其實底層是 component.proto data 而var obj 底層是var obj ne...