时间:2021-05-26
有时候因为布局问题,需要子组件 把数据 传给父组件,并执行父级的某个方法,不多说上代码:
子组件:
<template> <div class="isShowing" ref="isShowing"> <div 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> </div> <v-loading class="isloading" v-show="hid_show_switch"></v-loading> </div> </template> <script type="text/ecmascript-6"> export default { methods: { goToFatherDetail (itemId) { // this.$parent.$router.push('goToDetail'); console.log('子组件方法走了' + itemId); this.$emit('refreshbizlines', itemId); </span> } } }; </script>父组件:
<template> <div class="main-wrapper"> <div class="tab-wrapper"> <div class="tab-item"> <router-link to="/isShowing" class="table-item-text">正在热映</router-link> </div> <div class="tab-item"> <router-link to="/willShow" class="table-item-text">即将上映</router-link> </div> </div> </div> <router-view class="items-show" v-on:refreshbizlines="goToDetail" keep-alive></router-view> </div> </template> <script type="text/ecmascript-6"> export default { methods: { goToDetail (itemId) { console.log('父组件走你:' + itemId); } }<strong> }; </script></strong>父组件用 v-on 来做个监测的函数来检测,最终生成的代码是 类似
on: { "refreshbizlines": function($event) { _vm.goToDetail(123)}}所以原理就是 子组件 访问 父组件的 检测函数 refreshbizlines ,访问了,则执行 refreshbizline 下面的 函数
goToDetail -- 也就是父组件的
goToDetail函数
注意 父组件 的
v-on:refreshbizlines="goToDetail"一定要放在 你父组件调用子组件的 模块名上。
祝你们 编码愉快。
以上这篇VUEJS 2.0 子组件访问/调用父组件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前面的话 有时候需要父组件访问子组件,子组件访问父组件,或者是子组件访问根组件。在组件实例中,Vue提供了相应的属性,包括$parent、$children、
本文实例为大家分享了vue组件父与子通信的具体代码,供大家参考,具体内容如下一、组件间通信(父组件-->子组件)步骤:①父组件在调用子组件传值②在子组件中获取父
本文实例讲述了vuejs中父子组件之间通信方法。分享给大家供大家参考,具体如下:一、父组件向子组件传递消息//Parent.vueimportVChildfro
本文实例为大家分享了vue组件父子间通信的具体代码,供大家参考,具体内容如下三、组件间通信($parent$refs)父组件要想获取子组件的数据:①在调用子组件
单页面应用组件通信有以下几种,这篇文章主要讲Angular通信父组件=>子组件子组件=>父组件组件A=>组件B父组件=>子组件子组件=>父组件sibling=>