vue 组件间的几种通信方式
Props配置
原理:通过props配置,进行父子组件间的通信,跨父子通信需要其他组件进行过渡。
使用:
传递方在标签中添加传递内容
<Son :newName="name"/>
接收方在props配置中接收
props:['newName'] // 简单接收
props:{
sex:String,
age:Number
} // 接收的同时,进行数据类型检测
适用:父子通信
全局事件总线
原理:Vue 原型对象上包含事件处理的方法,VueComponent.prototype.__ proto__ === Vue.prototype,所有组件对象都能看到 Vue 原型对象上的属性和方法。
全局事件总线:包含事件处理相关方法的对象 + 可以得到所有的组件 + 唯一。
使用:
指定事件总线对象
new Vue({
beforeCreate () {
// 尽量早的执行挂载全局事件总线对象的操作
Vue.prototype.$globalEventBus = this
},
}).$mount('#App')
绑定自定义事件监听
this.$globalEventBus.$on(eventName, listener)
分发自定义事件
this.$globalEventBus.$emit(eventName, data)
绑定事件监听, 但只能处理一次
this.$globalEventBus.$once(eventName, listener)
解绑自定义事件监听
this.$globalEventBus.$off(eventName)
适用:兄弟通信、跨级通信。
消息订阅发布
原理:这种方式的思想与全局事件总线很相似,需要引入一个消息订阅与发布的第三方实现库: PubSubJS
订阅消息 --对应绑定事件监听、 发布消息 --分发事件、取消消息订阅 --解绑事件监听
使用:
下载第三方库
npm install -S pubsub-js
引入第三方库
import PubSub from 'pubsub-js'
订阅消息
PubSub.subscribe('msgName', functon(msgName, data){})
发布消息, 触发订阅的回调函数调用
PubSub.publish('msgName', data)
取消消息的订阅
PubSub.unsubscribe(token)
vue 组件间的几种通信方式的更多相关文章
- Vue组件间通信6种方式
摘要: 总有一款合适的通信方式. 作者:浪里行舟 Fundebug经授权转载,版权归原作者所有. 前言 组件是 vue.js 最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的 ...
- 应用六:Vue之父子组件间的三种通信方式
(注:本文适用于有一定Vue基础或开发经验的读者,文章就知识点的讲解不一定全面,但却是开发过程中很实用的) 组件是Vue的核心功能之一,也是我们在开发过程中经常要用到的.各个独立的组件之间如何进行数据 ...
- vue组件通信的几种方式
最近用vue开发项目,记录一下vue组件间通信几种方式 第一种,父子组件通信 一.父组件向子组件传值 1.创建子组件,在src/components/文件夹下新建一个Child.vue 2.Child ...
- Vue 组件间传值
前言 Vue 作为现在比较火的框架之一,相信您在使用的过程中,也会遇到组件间传值的情况,本文将讲解几种 Vue 组件间传值的几种方法,跟着小编一起来学习一下吧! 实现 注意: 学习本文,需要您对 Vu ...
- vue组件间通信六种方式(完整版)
本文总结了vue组件间通信的几种方式,如props. $emit/ $on.vuex. $parent / $children. $attrs/ $listeners和provide/inject,以 ...
- Vue组件间通信-Vuex
上回说到Vue组件间通讯,最后留了一个彩蛋~~~Vuex.Vuex是另一种组件通讯的方法,这节来说说Vuex(store仓库). 首先Vuex需要安装,安装的方式有很多,在这里就不一一细说了.我是通过 ...
- 黑马vue---56-58、vue组件创建的三种方式
黑马vue---56-58.vue组件创建的三种方式 一.总结 一句话总结: 不论是哪种方式创建出来的组件,组件的 template 属性指向的模板内容,必须有且只能有唯一的一个根元素 1.使用 Vu ...
- Vue组件间通信方式到底有几种
1. 前言 Vue的一个核心思想就是组件化.所谓组件化,就是把页面拆分成多个组件 (component),每个组件依赖的 CSS.JavaScript.模板.图片等资源放在一起开发和维护.组件是资源独 ...
- Vue组件间通信方式
一.Props传递数据 在父组件中使用子组件,本质通过v-bind绑定属性传入子组件,子组件通过props接收父组件传入的属性 <template> <div> 父组件:{{m ...
随机推荐
- 基于java处理.docx格式的word合并
如下实例是将 2.docx和3.docx合并,写到empty.docx中,不适用于.doc格式,public static void main(String[] args) { File file1 ...
- js将HTML中table导出到EXCEL word (只支持IE) 另用php 配合AJAX可以支持所有浏览器
转载请注明来源:https://www.cnblogs.com/hookjc/ <HTML> <HEAD> <title>WEB页面导出为EXC ...
- Linux常用命令,面试常考
Linux常用命令 网络工具 查看监听端口的进程: lsof -i :8080 或者 netstat -tupln|grep 8080 复制 软连接创建 ln -s 源文件 目标文件
- Jmeter平均响应时间和TPS的计算方法
转自:https://www.cnblogs.com/xianlai-huang/p/7795215.html Jmeter的Throughput和平均RT的计算 1.TPS:每秒处理的事务数,jme ...
- docker基础——1.原理解读
1. 相关内核知识 docker本质上是宿主机上的进程. 通过namespace实现资源隔离,通过cgroups实现资源限制,通过写时复制机制copy-on-write实现高效文件操作. 依赖kern ...
- 帆软报表(finereport)JS实现长页面锚点定位
在报表的应用需求中,页面过长时,需要页面中实现类似HTML中锚点功能以跳转到相应需要预览模块 1实现思路 在设计器中所做的操作最终都会以HTML形式展现在网页.在这里我们为报表块单元格加上id选择器配 ...
- 基于FMC接口的Kintex-7 XC7K325T PCIeX4 3U PXIe接口卡
一.板卡概述 本板卡基于Xilinx公司的FPGAXC7K325T-2FFG900 芯片,pin_to_pin兼容FPGAXC7K410T-2FFG900 ,支持PCIeX8.64bit DDR3容量 ...
- Solution -「CF 1375G」Tree Modification
\(\mathcal{Description}\) Link. 给定一棵 \(n\) 个结点的树,每次操作选择三个结点 \(a,b,c\),满足 \((a,b),(b,c)\in E\),并令 ...
- Filter(过滤器)与Listener(监听器)详解
11.Filter(重点) Filter:过滤器,用来过滤网站的数据: 处理中文乱码 登陆验证... Filter开发步骤: 导包 编写过滤器 导包不要错 实现Filter接口,重写对应的方法即可 p ...
- .NET CORE 鉴权
基础信息 1.什么是鉴权授权? 鉴权是验证用户是否拥有访问系统的权利,授权是判断用户是否有权限做一些其他操作. 2.传统的Session 和Cookie 主要用于无状态请求下的的用户身份识别,只不过S ...