Vue組件

什么是組件?

組件是自定義元素蚁吝。比如html沒(méi)有 <simple-counter></simple-counter>這個(gè)標(biāo)簽旱爆,我們可以創(chuàng)建一個(gè)。在vue里叫做組件

全局組件和局部組件

全劇組件窘茁。

就是用Vue.component()這種方法注冊(cè)的組件
比如

<script src="https://unpkg.com/vue/dist/vue.js"></script>
<div id="example-2">
  <simple-counter></simple-counter>
  <simple-counter></simple-counter>
  <simple-counter></simple-counter>
</div>
</div>

<script>
Vue.component('simple-counter', {
  template: '<h1>{{message}}</h1>',
  data:function(){
      return {
          message:'good'
      }
  }
})
new Vue({
  el: '#example-2'
})
</script>

局部組件

不必在全局注冊(cè)每個(gè)組件怀伦。通過(guò)使用組件實(shí)例選項(xiàng)注冊(cè),可以使組件僅在另一個(gè)實(shí)例/組件的作用域中可用:

<script src="https://unpkg.com/vue/dist/vue.js"></script>
<div id="example-2">
  <simple-counter></simple-counter>
  <simple-counter></simple-counter>
  <simple-counter></simple-counter>
</div>
</div>

<script>

 var xx = {
    template:'<h1>{{message}}</h1>',
    data:function(){
        return {
            message:'good'
        }
    }
 }
 
new Vue({
  el: '#example-2',
  components:{
    'simple-counter':xx 
  },

})
</script>

當(dāng)然這么寫(xiě)也可以

<script src="https://unpkg.com/vue/dist/vue.js"></script>
<div id="example-2">
  <simple-counter></simple-counter>
  <simple-counter></simple-counter>
  <simple-counter></simple-counter>
</div>
</div>

<script>
 
new Vue({
  el: '#example-2',
  components:{
    'simple-counter':{
    template:'<h1>{{message}}</h1>',
    data:function(){
        return {
            message:'good'
        }
    }
 }
  },

})
</script>

組件通信山林?

子組件不能直接利用父組件的數(shù)據(jù)房待。比如下面這個(gè),message="good"是在父組件(就是simple-counter里)里的驼抹,沒(méi)法傳遞到子組件(就是h1標(biāo)簽里)桑孩。結(jié)果什么也沒(méi)渲染出來(lái)。

<script src="https://unpkg.com/vue/dist/vue.js"></script>
<div id="example-2">
  <simple-counter message="good"></simple-counter>
  <simple-counter></simple-counter>
  <simple-counter></simple-counter>
</div>
</div>

<script>
Vue.component('simple-counter', {
  template: '<h1>{{message}}</h1>',
 
})
new Vue({
  el: '#example-2'
})
</script>

加上一句

<script src="https://unpkg.com/vue/dist/vue.js"></script>
<div id="example-2">
  <simple-counter message="good"></simple-counter>
  <simple-counter></simple-counter>
  <simple-counter></simple-counter>
</div>
</div>

<script>
Vue.component('simple-counter', {
    props:['message'],
       template: '<h1>{{message}}</h1>',
 
})
new Vue({
  el: '#example-2'
})
</script>

結(jié)果

image.png

傳遞多個(gè)數(shù)據(jù)

<div id="example-2">
  <simple-counter message="good"></simple-counter>
  <simple-counter size='apple'></simple-counter>
  <simple-counter></simple-counter>
</div>
</div>

<script>
Vue.component('simple-counter', {
    props:['message','size'],
  template: '<h1>{{message}} {{size}}</h1>',
  
 
})
new Vue({
  el: '#example-2'
})
</script>
image.png

參考

Vue 父組件和子組件怎么理解砂蔽? - 知乎

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末洼怔,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子左驾,更是在濱河造成了極大的恐慌镣隶,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,686評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诡右,死亡現(xiàn)場(chǎng)離奇詭異安岂,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)帆吻,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,668評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)域那,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人猜煮,你說(shuō)我怎么就攤上這事次员。” “怎么了王带?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,160評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵淑蔚,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我愕撰,道長(zhǎng)刹衫,這世上最難降的妖魔是什么醋寝? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,736評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮带迟,結(jié)果婚禮上音羞,老公的妹妹穿的比我還像新娘。我一直安慰自己仓犬,他們只是感情好嗅绰,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,847評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著婶肩,像睡著了一般办陷。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上律歼,一...
    開(kāi)封第一講書(shū)人閱讀 50,043評(píng)論 1 291
  • 那天民镜,我揣著相機(jī)與錄音,去河邊找鬼险毁。 笑死制圈,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的畔况。 我是一名探鬼主播鲸鹦,決...
    沈念sama閱讀 39,129評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼跷跪!你這毒婦竟也來(lái)了馋嗜?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,872評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤吵瞻,失蹤者是張志新(化名)和其女友劉穎葛菇,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體橡羞,經(jīng)...
    沈念sama閱讀 44,318評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡眯停,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,645評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了卿泽。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片莺债。...
    茶點(diǎn)故事閱讀 38,777評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖签夭,靈堂內(nèi)的尸體忽然破棺而出齐邦,到底是詐尸還是另有隱情,我是刑警寧澤第租,帶...
    沈念sama閱讀 34,470評(píng)論 4 333
  • 正文 年R本政府宣布侄旬,位于F島的核電站,受9級(jí)特大地震影響煌妈,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,126評(píng)論 3 317
  • 文/蒙蒙 一璧诵、第九天 我趴在偏房一處隱蔽的房頂上張望汰蜘。 院中可真熱鬧,春花似錦之宿、人聲如沸族操。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,861評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)色难。三九已至,卻和暖如春等缀,著一層夾襖步出監(jiān)牢的瞬間枷莉,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,095評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工尺迂, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留笤妙,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,589評(píng)論 2 362
  • 正文 我出身青樓噪裕,卻偏偏與公主長(zhǎng)得像蹲盘,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子膳音,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,687評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容

  • 此文基于官方文檔召衔,里面部分例子有改動(dòng),加上了一些自己的理解 什么是組件祭陷? 組件(Component)是 Vue.j...
    陸志均閱讀 3,807評(píng)論 5 14
  • 推薦我的vue教程:VUE系列教程目錄 上篇講解了vue-router路由入門(mén)苍凛,現(xiàn)在講講關(guān)于vue組件的內(nèi)容。如果...
    儂姝沁兒閱讀 2,357評(píng)論 6 20
  • 在這一節(jié)里颗胡,我們將會(huì)了解到Vue的組件毫深,理解組件是如何工作的,并利用一系列的例子證明毒姨,用組件化的思想開(kāi)發(fā)項(xiàng)目哑蔫,會(huì)給...
    嘉寶_Appian閱讀 3,272評(píng)論 6 17
  • 組件簡(jiǎn)介# 組件系統(tǒng):組件系統(tǒng)是Vue.js其中一個(gè)重要的概念,它提供了一種抽象弧呐,讓我們可以使用獨(dú)立可復(fù)用的小組件...
    Gopal閱讀 301評(píng)論 0 3
  • 什么是Vue組件 組件 (Component) 是 Vue.js 最強(qiáng)大的功能之一闸迷。組件可以擴(kuò)展 HTML 元素,...
    bacbcc94613b閱讀 961評(píng)論 0 0