亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue2.0基于vue-cli+webpack父子組件通信(實(shí)例講解)

 更新時(shí)間:2017年09月14日 08:02:35   作者:ghostwu  
下面小編就為大家?guī)硪黄猇ue2.0基于vue-cli+webpack父子組件通信(實(shí)例講解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

在git命令行下,執(zhí)行以下命令完成環(huán)境的搭建:

1,npm install --global vue-cli 安裝vue命令行工具

2,vue init webpack vue-demo 使用vue命令生成一個(gè)webpack項(xiàng)目,項(xiàng)目名稱為vue-demo

3,cd vue-demo 切入項(xiàng)目

4,npm install安裝package.json中的所有依賴包

5,npm run dev運(yùn)行項(xiàng)目

一、父組件向子組件傳遞數(shù)據(jù)

然后刪除默認(rèn)的Hello.vue組件,把App.vue整理成以下樣子:

<template>
 <div id="app">
 這是一個(gè)空的app
 </div>
</template>

<script>
 export default {
 name : 'app'
 }
</script>

<style>

</style>

把router下面index.js文件修改如下:

import Vue from 'vue'
import Router from 'vue-router'

Vue.use(Router)

export default new Router({
 routes: [
 {
  path: '/',
 }
 ]
})

1、在components目錄下創(chuàng)建一個(gè)子組件Child.vue

代碼如下:

<template>
 <div>
  <h3>這是子組件</h3>
  <p>{{content}}</p>
 </div>
</template>
<script>
export default {
 props : ['content']
}
</script>

2、把App.vue的代碼修改如下:

<template>
 <div id="app">
 <child :content="msg"></child>
 </div>
</template>

<script>
 import child from './components/Child.vue';
 export default {
 name : 'app',
 data(){
  return {
  'msg' : '這是來自父組件的問候'
  }
 },
 components : {
  child
 }
 }
</script>

這樣就完成了父組件通過props屬性向子組件傳遞數(shù)據(jù)

也可以用v-bind綁定屬性

<template>
 <div id="app">
 <child :content="msg"></child>
 <child v-bind:content="msg"></child>
 </div>
</template>

小結(jié):

子組件在props中創(chuàng)建一個(gè)屬性,用以接收父組件傳過來的值

父組件中調(diào)用子組件

在子組件標(biāo)簽中綁定子組件props中創(chuàng)建的屬性

把需要傳給子組件的值賦給該屬性,如我們上文中父組件的msg

二、子組件向父組件傳遞數(shù)據(jù)

1,把Child.vue修改如下:

<template>
 <div>
  <h3>這是子組件</h3>
  <p>{{content}}</p>
  <p>
   <input type="button" value="告訴父王一個(gè)消息" v-on:click="send">
  </p>
 </div>
</template>
<script>
export default {
 props : ['content'],
 methods : {
  send(){
   this.$emit( 'ParentRecEv', "父王,孩兒正在跟ghostwu學(xué)習(xí)vue2.0" )
  }
 }
}
</script>

子組件通過$emit發(fā)送一個(gè)自定義的事件ParentRecEv, 后面參數(shù)是內(nèi)容

2,App.vue修改如下

<template>
 <div id="app">
 <child :content="msg"></child>
 <child v-bind:content="msg" v-on:ParentRecEv="showMsg"></child>
 <p>{{data}}</p>
 </div>
</template>

<script>
 import child from './components/Child.vue';
 export default {
 name : 'app',
 data(){
  return {
  'msg' : '這是來自父組件的問候',
  data : ''
  }
 },
 methods : {
  showMsg( msg ){
  this.data = msg;
  }
 },
 components : {
  child
 }
 }
</script>

在第二個(gè)子組件監(jiān)聽事件ParentRecEv,當(dāng)子組件點(diǎn)擊按鈕就會(huì)觸發(fā)這個(gè)自定義事件,然后觸發(fā)showMsg函數(shù),就能收到子組件傳遞的數(shù)據(jù),沒有綁定自定義事件是不能收到子組件發(fā)送的信息的.

小結(jié):

子組件中通過$emit觸發(fā)一個(gè)自定義事件

將需要傳的值作為$emit的第二個(gè)參數(shù),該值會(huì)被父組件的方法接收到

在父組件中調(diào)用子組件并在子組件標(biāo)簽上綁定發(fā)送的自定義事件

他們的共同點(diǎn)就是有橋梁,子向父的橋梁是自定義事件$emit,父向子的橋梁是props中的屬性. 這就是他們之間傳遞數(shù)據(jù)的關(guān)鍵

以上這篇Vue2.0基于vue-cli+webpack父子組件通信(實(shí)例講解)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解如何編寫一個(gè)Vue3響應(yīng)式系統(tǒng)

    詳解如何編寫一個(gè)Vue3響應(yīng)式系統(tǒng)

    這篇文章主要為大家學(xué)習(xí)介紹了如何編寫一個(gè)Vue3響應(yīng)式系統(tǒng),文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以了解一下
    2023-07-07
  • vue3+element?plus實(shí)現(xiàn)側(cè)邊欄過程

    vue3+element?plus實(shí)現(xiàn)側(cè)邊欄過程

    這篇文章主要介紹了vue3+element?plus實(shí)現(xiàn)側(cè)邊欄過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • vue等兩個(gè)接口都返回結(jié)果再執(zhí)行下一步的實(shí)例

    vue等兩個(gè)接口都返回結(jié)果再執(zhí)行下一步的實(shí)例

    這篇文章主要介紹了vue等兩個(gè)接口都返回結(jié)果再執(zhí)行下一步的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • vue 中滾動(dòng)條始終定位在底部的方法

    vue 中滾動(dòng)條始終定位在底部的方法

    今天小編就為大家分享一篇vue 中滾動(dòng)條始終定位在底部的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vscode 插件開發(fā) + vue的操作方法

    vscode 插件開發(fā) + vue的操作方法

    這篇文章主要介紹了vscode 插件開發(fā) + vue的操作方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 詳解vue為什么要求組件模板只能有一個(gè)根元素

    詳解vue為什么要求組件模板只能有一個(gè)根元素

    這篇文章主要介紹了vue為什么要求組件模板只能有一個(gè)根元素,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-07-07
  • Vue-admin-template?報(bào)Uncaught?(in?promise)?error問題及解決

    Vue-admin-template?報(bào)Uncaught?(in?promise)?error問題及解決

    這篇文章主要介紹了Vue-admin-template?報(bào)Uncaught?(in?promise)?error問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Vue-cli assets SubDirectory及PublicPath區(qū)別詳解

    Vue-cli assets SubDirectory及PublicPath區(qū)別詳解

    這篇文章主要介紹了Vue-cli assets SubDirectory及PublicPath區(qū)別詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • vue3.0安裝Element?ui及矢量圖使用方式

    vue3.0安裝Element?ui及矢量圖使用方式

    這篇文章主要介紹了vue3.0安裝Element?ui及矢量圖使用,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • vue 中的keep-alive實(shí)例代碼

    vue 中的keep-alive實(shí)例代碼

    這篇文章主要介紹了vue中的keep-alive實(shí)例代碼,vue實(shí)現(xiàn)組件信息緩存的方法,在文中也給大家提到,需要的朋友可以參考下
    2018-07-07

最新評(píng)論