[Vue]非父子组件传值(bus/总线/观察者模式/发布订阅模式)
核心:
- 在vue原型中挂载vue实例
- 通过this.bus.$emit('事件名', '参数')向外触发事件和传递参数
- 在生命周期函数mounted中,通过this.bus.$on('传递出来的事件名, callback')来做后续逻辑处理
Demo(实现点击,使得另外一个也改变成自己的名字)
<div id="app"><child content="吴旭飞"></child><child content="左晶晶"></child>
</div>
<script>Vue.prototype.bus = new Vue() // 在vue原型中挂载vue实例Vue.component('child', {data () {return {selfcontent: this.content}},props: {content: {type: String,}},template: '<div @click="handleClick">{{selfcontent}}</div>',methods: {handleClick () {this.bus.$emit('change', this.selfcontent) // 通过this.bus.$emit('事件名', '参数')向外触发事件和传递参数}},mounted() { // 3. 在生命周期函数mounted中,通过this.bus.$on('传递出来的事件名, callback')来做后续逻辑处理this.bus.$on('change', data => {this.selfcontent = data})},})var app = new Vue ({el: '#app'})
</script>
复制代码
转载于:https://juejin.im/post/5cd0284cf265da03a85ad4b9
[Vue]非父子组件传值(bus/总线/观察者模式/发布订阅模式)相关推荐
- Vue非父子组件传值
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.非父子组件传值 二.事件总线 2.$attrs / listeners VueX是笔者认为最稳定的非父子传值的方法 ...
- VUE非父子组件通信Bus——公交车踩坑笔记
抛开父子组件的通讯,对于非父子组件通信,简单的数据交互,使用Bus是非常不错的. 遇到的坑有两个. 1.两个组件的信息交互代码写在哪个生命周期函数中,如果只是点击组件A标签触发函数,然后向界面B传递参 ...
- 关于Vue非父子组件传值
熟悉了Vue.js的同级组件之间通信,写此文章,以便记录. Vue是一个轻量级的渐进式框架,对于它的一些特性和优点,请在官网上进行查看,不再赘述. 使用NPM及相关命令行工具初始化的Vue工程,目录结 ...
- Vue非父子组件传值+案例cnode首页
1. 创建公共实例化对象 const bus=new Vue() 2. 在需要发送数据的组件中 绑定事件 使用 bus.$emit发送数据 <button @click="send&q ...
- VUE非父子组件通信
非父子组件通信 vue非父子组件传值方式,本文章整理了两种方式:vuex和总线bus.vuex相比于总线bus来说非常的稳定,推荐直接使用vuex. 我看其他的文章基本上是[点击导航栏回退的时候,去获 ...
- vue中非父子组件传值
vue中非父子组件传值 我们使用 $emit发送数据使用 $on监听数据vue非父子组件传值1 创建公共实例化对象const bus=new Vue()2 在需要发送数据的组件中自定义方法 使用bus ...
- vue学习【非父子组件传值问题(Bus/总线/观察者模式)】
如果两个组件是父子关系,就可以通过props的方式传值. 父组件通过props向子组件传值,子组件通过事件触发向父组件传值 那么如果两个组件之间不具备父子关系,该如何传值呢?任何一个网页都可以拆分成几 ...
- 父子组建传值_浅谈Vue父子组件和非父子组件传值问题
本文介绍了浅谈Vue父子组件和非父子组件传值问题,分享给大家,具体如下: 1.如何创建组件 1.新建一个组件,如:在goods文件夹下新建goodsList.vue goodsList组件 expor ...
- Vue.js组件-组件通信-非父子组件传值以及其他通信方式
非父子组件传值 非父子组件指的是兄弟组件或完全无关的两个组件 兄弟组件 兄弟组件可以通过父组件进行数据中转,简单来讲,A是父组件,BC是两个兄弟组,那么我们可以先B传给A,再A传给C.示例如图: Ev ...
最新文章
- 杭电oj2072c语言,杭电acm 2072(单词数)
- 大数据测试之初识Hadoop2
- vuex之state-状态对象的获取方法(三)
- Java虚拟机参数,增加虚拟机最大内存,在/etc/profile增加如下: export JAVA_OPTS=-Xms9g -Xmx9g...
- java rmi 还有用吗_java rmi使用后的感想
- SQL基础选段(2)
- 答应了好久的camera资料
- 【图像处理】参数维纳滤波(Parametric Wiener Filter)
- 加拿大28历史开奖鸿蒙,本内特入选加拿大男篮集训名单,史上最水状元秀如今在何处?...
- 【EOS】2.1 EOS Hello World合约
- ELK-日志收集工具nxlog
- jenkins插件镜像源
- android 电池测试 apk,安卓手机电池检测工具
- 使用iperf测试网速
- 复化科特斯公式matlab_【原创】牛顿-柯特斯数值积分公式及其MATLAB的实现
- git master手动合并到develop
- 解决IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter
- 5G的SUCI、SUPI、5G-GUTI使用场景及关系
- 【VS】VS Code安装、配置、使用(windows10 64)
- 【临侦探侦工作原理】
热门文章
- 使用Shell脚本对Oracle元数据进行动态版本控制
- 航班信息管理系统java_java实现航班信息查询管理系统
- 服务端技术方案模板参考
- 2012威盛软件类面试(一上午三轮)
- 电子邮件SMTP协议原始命令码和工作原理
- Linux下可以给视频换脸吗,视频AI换脸软件教程 看这里
- python3爬虫图片_【已下线】Python3 实现淘女郎照片爬虫
- w ndows7旗舰版怎么重装系统,windows7旗舰版安装包下载到手机的操作方法步骤教程 - 系统家园...
- 【Iriun Webcam】
- 百城价格房价周期和郑州、武汉房价比较分析