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

解決Vue.js父組件$on無法監(jiān)聽子組件$emit觸發(fā)事件的問題

 更新時(shí)間:2018年09月12日 10:37:23   作者:wo_buzhidao  
今天小編就為大家分享一篇解決Vue.js父組件$on無法監(jiān)聽子組件$emit觸發(fā)事件的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

最近學(xué)習(xí)vuejs看例子中用$on無法監(jiān)聽子組件$emit觸發(fā)事件:

使用版本

vue.js 2.2.5

參考文獻(xiàn)

1.vuejs API

2.解決實(shí)例

問題分析

1.之前寫的自定義組件事件觸發(fā)為this.$emit("myclick",this.todo.text);,這樣this指的是todo-item的每一項(xiàng),而最后vm.$on監(jiān)聽的是app組件,也就出說監(jiān)聽的是父節(jié)點(diǎn),而觸發(fā)的是子節(jié)點(diǎn),故監(jiān)聽不到這個(gè)事件的。

解決思路

1.將觸發(fā)事件放在父節(jié)點(diǎn)上觸發(fā),就可以監(jiān)聽到觸發(fā)的事件了,即this.$parent.$emit("myclick",this.todo.text);,這樣即可以在vm.$on監(jiān)聽到觸發(fā)的事件了。

實(shí)現(xiàn)代碼

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Emit事件和On事件</title>
</head>
<script src="../js/vue.js"></script>
<link rel="stylesheet" href="../css/demo.css" rel="external nofollow" />
<body>
<div id="app">
 <todo-item v-for="(item,index) in items" v-bind:todo="item" v-on:myclick="addResult"></todo-item>
</div>
</body>
<script>
 Vue.component('todoItem',{
 props:['todo'],
 template:'<li v-on:click="add">{{todo.text}}</li>', //1.在自定義組件中加入點(diǎn)擊事件傳給add
 methods:{
  add:function(){   //2.這里的add拿到template中的點(diǎn)擊事件add,并執(zhí)行函數(shù)
  this.$parent.$emit("myclick",this.todo.text); //3.暴露給父組件中點(diǎn)擊事件名稱為my-click
  },
 },
 })
 var vm=new Vue({
  el:'#app',
  data:{
  items:[
   { text: 'Runoob' },
   { text: 'Google' },
   { text: 'Taobao' }
  ]
  },
  methods:{
  //5.這里執(zhí)行父組件傳遞的點(diǎn)擊函數(shù)
  addResult:function(value){
   alert(value);
  },
  },
 });
 vm.$on('myclick',function (value) {
  console.log(value);
 })
</script>
</html>

以上這篇解決Vue.js父組件$on無法監(jiān)聽子組件$emit觸發(fā)事件的問題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 手把手教你vue-cli單頁到多頁應(yīng)用的方法

    手把手教你vue-cli單頁到多頁應(yīng)用的方法

    本篇文章主要介紹了手把手教你vue-cli單頁到多頁應(yīng)用的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-05-05
  • vue中路由的前進(jìn)和后退問題

    vue中路由的前進(jìn)和后退問題

    這篇文章主要介紹了vue中路由的前進(jìn)和后退問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • Vue中的循環(huán)遍歷與key值原理解讀

    Vue中的循環(huán)遍歷與key值原理解讀

    這篇文章主要介紹了Vue中的循環(huán)遍歷與key值原理,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue前后端端口不一致的問題解決

    vue前后端端口不一致的問題解決

    本文主要介紹了vue前后端端口不一致的問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-10-10
  • vue使用websocket概念及示例

    vue使用websocket概念及示例

    這篇文章主要為大家介紹了vue使用websocket概念及示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • 手寫Vue2.0 數(shù)據(jù)劫持的示例

    手寫Vue2.0 數(shù)據(jù)劫持的示例

    這篇文章主要介紹了手寫Vue2.0 數(shù)據(jù)劫持的示例,幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下
    2021-03-03
  • vue.js 打包時(shí)出現(xiàn)空白頁和路徑錯(cuò)誤問題及解決方法

    vue.js 打包時(shí)出現(xiàn)空白頁和路徑錯(cuò)誤問題及解決方法

    這篇文章主要介紹了vue.js 打包時(shí)出現(xiàn)空白頁和路徑錯(cuò)誤問題及解決方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-06-06
  • vue多次打包后出現(xiàn)瀏覽器緩存的問題及解決

    vue多次打包后出現(xiàn)瀏覽器緩存的問題及解決

    這篇文章主要介紹了vue多次打包后出現(xiàn)瀏覽器緩存的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Vue.js中輕松解決v-for執(zhí)行出錯(cuò)的三個(gè)方案

    Vue.js中輕松解決v-for執(zhí)行出錯(cuò)的三個(gè)方案

    v-for標(biāo)簽可以用來遍歷數(shù)組,將數(shù)組的每一個(gè)值綁定到相應(yīng)的視圖元素中去,下面這篇文章主要給大家介紹了關(guān)于在Vue.js中輕松解決v-for執(zhí)行出錯(cuò)的三個(gè)方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。
    2017-06-06
  • vuex中五大屬性和使用說明(包括輔助函數(shù))

    vuex中五大屬性和使用說明(包括輔助函數(shù))

    這篇文章主要介紹了vuex中五大屬性和使用說明(包括輔助函數(shù)),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05

最新評(píng)論