欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue子組件向父組件通信與父組件調(diào)用子組件中的方法

 更新時間:2018年06月22日 16:33:33   作者:ybs5431  
這篇文章主要介紹了Vue子組件向父組件通信與父組件調(diào)用子組件中的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下

子組件向父組件通信

子組件的button按鈕綁定點擊事件,事件方法名為sendToParent(),

該方法在子組件的methods中聲明,實現(xiàn)功能this.$emit('cus-event',this.msg);

在父組件引入子組件,并給cus-event事件綁定doAction($event)方法,該方法中this.msg = e;console.log(e),

而msg已經(jīng)在data中聲明,其值為”子級消息”,故最終的輸出結(jié)果為: 展示父級接收到的消息:子級消息

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

點擊父組件的button按鈕,觸發(fā)了click事件指向的useChild方法[該方法的行為是輸出”父級消息”],

useChild方法在父組件的中的methods中聲明,調(diào)用子組件中的方法,并傳入?yún)?shù)str,即this.$refs.child1.getMsg(str);

而getMsg方法已經(jīng)在子組件的methods中聲明,其行為是console.log('子級組件收到父級的內(nèi)容',str);,

所以,最終的輸出結(jié)果為: 子級組件收到父級的內(nèi)容 父級消息

代碼示例(結(jié)合上面的分析理解代碼)

<!DOCTYPE html> 
<html lang="en"> 
<head> 
  <meta charset="UTF-8"> 
  <title>子向父通信</title> 
  <style> 
    #app { 
      border: 1px solid blue; 
      width: 500px; 
      padding: 20px; 
      margin: auto; 
      border-radius: 8px; 
      background: fuchsia; 
    } 
    #wrapper { 
      border: 1px solid red; 
      width: 400px; 
      padding: 20px; 
      border-radius: 8px; 
      background: yellowgreen; 
      margin-top: 20px; 
    } 
  </style> 
  <script src="https://cdn.jsdelivr.net/npm/vue"></script> 
</head> 
<body> 
  <div id="app"> 
    <!-- 父組件 --> 
    <h1>這是父組件</h1> 
    <p>展示父級接收到的消息:{{msg}}</p> 
    <button @click="useChild(szStr)">調(diào)用子組件的方法</button> 
     <!-- cus-event為子組件自定義的事件名; doAction($event)為父組件的事件,參數(shù)$event不可少也不可寫成其他--> 
    <!-- ref表示組件的別名 --> 
    <child @cus-event="doAction($event)" ref="child1"></child> 
  </div> 
</body> 
</html> 
<template id="child"> 
  <div id="wrapper"> 
    <!-- 子組件 --> 
    <h2>這是子組件</h2> 
    <button @click="sendToParent">向父組件發(fā)消息</button> 
  </div> 
</template> 
<script> 
  let child = { 
    template: '#child', 
    data() { 
      return { 
        msg: '子級消息' 
      }; 
    }, 
    methods: { 
      sendToParent() { 
        // 子組件只管發(fā)送消息,其中cus-event為自定義事件名(事件名不能寫成駝峰法,多個單詞用-連接),this.msg為要傳遞的參數(shù)。 
        this.$emit('cus-event', this.msg); 
      }, 
      getMsg(str) { 
        console.log('子級組件收到父級的內(nèi)容', str); 
      } 
    } 
  }; 
  // 注意: .$mount('#app')跟實例內(nèi)部el: '#app'是等價的 
  new Vue({ 
    data: { 
      msg: '', 
      szStr:'父級消息' 
    }, 
    components: { 
      child 
    }, 
    methods: { 
      doAction(e) { 
        console.log(this); 
        console.log(e); 
        this.msg = e; 
      }, 
      useChild(str) { 
        // 調(diào)用子組件的方法 
        // console.log(this); 
        // console.log(this.$refs); 
        // this.$refs.child1得到的子組件實例 
        this.$refs.child1.getMsg(str); 
      } 
    } 
  }).$mount('#app'); 
</script> 

效果圖

總結(jié)

以上所述是小編給大家介紹的Vue子組件向父組件通信與父組件調(diào)用子組件中的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Vue3按需引入Element?Plus以及定制主題色教程

    Vue3按需引入Element?Plus以及定制主題色教程

    由于涉及到vue框架單網(wǎng)頁應(yīng)用首屏加載慢這個問題,我們需盡量減少加載負(fù)擔(dān),故采用按需引入的方式,只引入項目中用到的組件,這篇文章主要給大家介紹了關(guān)于Vue3按需引入Element?Plus以及定制主題色的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • Vue.js實現(xiàn)一個自定義分頁組件vue-paginaiton

    Vue.js實現(xiàn)一個自定義分頁組件vue-paginaiton

    這篇文章主要為大家詳細(xì)介紹了Vue.js實現(xiàn)一個自定義分頁組件vue-paginaiton的具體代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 一文帶你了解threejs在vue項目中的基本使用

    一文帶你了解threejs在vue項目中的基本使用

    three.js是一個用于在Web上創(chuàng)建三維圖形的JavaScript庫,它可以用于創(chuàng)建各種類型的三維場景,包括游戲、虛擬現(xiàn)實、建筑和產(chǎn)品可視化等,下面這篇文章主要給大家介紹了關(guān)于如何通過一文帶你了解threejs在vue項目中的基本使用,需要的朋友可以參考下
    2023-04-04
  • Vue過渡效果之CSS過渡詳解(結(jié)合transition,animation,animate.css)

    Vue過渡效果之CSS過渡詳解(結(jié)合transition,animation,animate.css)

    Vue 在插入、更新或者移除 DOM 時,提供多種不同方式的應(yīng)用過渡效果。本文將從CSS過渡transition、CSS動畫animation及配合使用第三方CSS動畫庫(如animate.css)這三方面來詳細(xì)介紹Vue過渡效果之CSS過渡
    2020-02-02
  • Vue自定義可以選擇日期區(qū)間段的日歷插件

    Vue自定義可以選擇日期區(qū)間段的日歷插件

    這篇文章主要為大家詳細(xì)介紹了Vue自定義可以選擇日期區(qū)間段的日歷插件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 詳細(xì)聊聊Vue生命周期的那些事

    詳細(xì)聊聊Vue生命周期的那些事

    這篇文章主要給大家介紹了關(guān)于Vue生命周期的那些事,在使用vue開發(fā)過程中經(jīng)常會接觸到生命周期的問題,但對于每個鉤子函數(shù)都做了什么,應(yīng)用場景比較模糊,希望通過這次梳理讓自己清楚一些,需要的朋友可以參考下
    2021-09-09
  • vue數(shù)據(jù)雙向綁定的注意點

    vue數(shù)據(jù)雙向綁定的注意點

    這篇文章主要為大家詳細(xì)介紹了vue數(shù)據(jù)雙向綁定的注意點,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • Element-UI Table組件上添加列拖拽效果實現(xiàn)方法

    Element-UI Table組件上添加列拖拽效果實現(xiàn)方法

    這篇文章主要為大家詳細(xì)介紹了Element-UI Table組件上添加列拖拽效果的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • 解決vue+webpack打包路徑的問題

    解決vue+webpack打包路徑的問題

    下面小編就為大家分享一篇解決vue+webpack打包路徑的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • vue如何根據(jù)數(shù)值判斷顏色

    vue如何根據(jù)數(shù)值判斷顏色

    這篇文章主要介紹了vue如何根據(jù)數(shù)值判斷顏色問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03

最新評論