前端mvvm框架vue.js(2)——組件

vue.js借鑒了angluar.js關(guān)于組件的內(nèi)容,同時增加自己的新特性,而且組件注冊非常靈活多變;支持單文件的方式,使組件開發(fā)更為清新明了。

使用組件

1,注冊

vue.js提供一系列的方法創(chuàng)建和注冊組件,這些方法包括:Vue.extend,Vue.component

//組件創(chuàng)建和注冊
var myComponent=Vue.extend({
 //選項對象options,這里聲明組件包含的東西
})
Vue.component("my-component",mycomponent);
//注意單獨(dú)使用這種用法,組件是全局注冊的

組件注冊后,可以以自定義元素my-component的方式寫在父組件的模板中,同時要確保在根實(shí)例化之前注冊了組件

2,局部注冊

在不需要全局注冊組件時,使用components選項將組件注冊到另一組件內(nèi)部。

var childComponent=Vue.extend({
//選項對象
})
var parentComponent=Vue.extend({
   template:"...",
   components:{"my-component":childComponent}
})

3,注冊語法糖

可以直接傳遞選項對象給Vue.component和components

//注冊組件
Vue.component("my-component",{
 template:"<div>注冊語法糖下注冊組件</div>"
})
//局部注冊的語法糖
var parent=Vue.extend({
  components:{
     "my-component":{
          data:{msg:"hello vue.js"},
          template:"<div>局部注冊語法糖</div>"
      }
    }
})

組件選項問題

特殊的選項:data和el,直接使用時,所有實(shí)例將共享這兩個選項,此時可以將這兩個選項注冊為方法

var myComponent=Vue.extend({
 data:function(){
  return{a:1}
}
})
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 這篇筆記主要包含 Vue 2 不同于 Vue 1 或者特有的內(nèi)容,還有我對于 Vue 1.0 印象不深的內(nèi)容。關(guān)于...
    云之外閱讀 5,180評論 0 29
  • Vue 實(shí)例 屬性和方法 每個 Vue 實(shí)例都會代理其 data 對象里所有的屬性:var data = { a:...
    云之外閱讀 2,374評論 0 6
  • 1.安裝 可以簡單地在頁面引入Vue.js作為獨(dú)立版本,Vue即被注冊為全局變量,可以在頁面使用了。 如果希望搭建...
    Awey閱讀 11,302評論 4 129
  • 時間:2017年9月26日 地點(diǎn):天津豆丁公寓 作者:阮博杰 事件: 和康康在我們自己屋子里談?wù)撽P(guān)于記賬的問題,還...
    阮博杰閱讀 176評論 4 2
  • 苦,新華字典里的解釋:1.像膽汁或黃蓮的滋味;2.感覺難受的;3.為某事所苦;4.有耐心地、盡力地;5.使受苦。 ...
    五花肉兒閱讀 446評論 2 1

友情鏈接更多精彩內(nèi)容