vue.extend與vue.component


Vue.extend 返回的是一個Vue實例構造器。

這里只是構造完成 但是還沒有實例化所以還不是一個組件

var myVue = Vue.extend({
// 預設選項
})

上面這個 預設選項 可以是Vue所有實例選項 比如 data () {} ,methods: {}, created: {}

 

現在就是一個vue組件了

var vm = new myVue({
// 其他選項
})

上面這個其他選項可以是 new Vue({})里面的所有屬性選項 比如 data () {} ,methods: {}, created: {}。

new myVue({})后會合並預設選項和其他選項中的所有屬性選項:

1.data數據對象在內部會進行淺合並 (一層屬性深度)。

2.鈎子函數會先執行預設選項中的

3.值為對象的選項,例如 methods, components 將被混合為同一個對象,兩個對象鍵名沖突時,會以new myVue({})對象的選項為准。

注意:混入 (mixins) 也使用同樣的策略進行合並。

 

Vue.component 是用來全局注冊組件的方法

其作用是將通過 Vue.extend 生成的擴展實例構造器注冊為一個組件,

會自動調用類似於 new myVue 這樣的構造函數來生成組件實例,並掛載到自定義元素上。

方法1:全局注冊

Vue.component('myVue',myVue) 

方法2:內部注冊

可以在某個組件中的components屬性中注冊並使用組件

new Vue({    
  components:{
    myVue: myVue
  }
})

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM