Maison > Article > interface Web > Le composant enfant Vuejs2.0 appelle la méthode du composant parent
Parfois, en raison de problèmes de mise en page, le sous-composant doit transmettre des données au composant parent et exécuter une certaine méthode du parent. Cet article présente principalement la méthode du sous-composant Vuejs 2.0 accédant/appelant le composant parent (exemple). code), qui est obligatoire. Les amis peuvent s'y référer, j'espère que cela pourra aider tout le monde.
Pas grand chose à dire sur le code :
Composant enfant :
<template> <p class="isShowing" ref="isShowing"> <p class="menu-wrapper" ref="scroll_warpper" v-show="!hid_show_switch"> <ul ref="scroll_warpper_ul"> <li class="menu-item" @click="goToFatherDetail(233)"> </li> </ul> </p> <v-loading class="isloading" v-show="hid_show_switch"></v-loading> </p> </template> <script type="text/ecmascript-6"> export default { methods: { goToFatherDetail (itemId) { // this.$parent.$router.push('goToDetail'); console.log('子组件方法走了' + itemId); this.$emit('refreshbizlines', itemId); /* <span style="font-family: Arial, Helvetica, sans-serif;">itemId就是子要传的数据 - 这里很重要,refreshbizlines就是父组件$on监测的自定义函数不是父组件的自定义函数。*/</span> } } }; </script>
Composant parent :
<template> <p class="main-wrapper"> <p class="tab-wrapper"> <p class="tab-item"> <router-link to="/isShowing" class="table-item-text">正在热映</router-link> </p> <p class="tab-item"> <router-link to="/willShow" class="table-item-text">即将上映</router-link> </p> </p> </p> <router-view class="items-show" v-on:refreshbizlines="goToDetail" keep-alive></router-view> </p> </template> <script type="text/ecmascript-6"> export default { methods: { goToDetail (itemId) { console.log('父组件走你:' + itemId); } }<strong> }; </script></strong>
Le composant parent utilise v-on pour créer une fonction de surveillance pour la détection. Le code final généré est similaire à
on: { "refreshbizlines": function($event) { _vm.goToDetail(123) } }<.>Donc, le principe est que le composant enfant accède à la fonction de détectionfreshbizlines du composant parent. En cas d'accès, la fonction ci-dessousfreshbizline est exécutée goToDetail -- c'est-à-dire le du composant parent. Fonction goToDetail Remarque Le
v-on:refreshbizlines="goToDetail"du composant parent doit être placé sur le nom de module de votre composant parent appelant le composant enfant.
Vuejs2.0 implémente le composant de pagination en utilisant $emit pour les compétences de transfert de données javascript de surveillance d'événements
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!