我是靠谱客的博主 唠叨寒风,最近开发中收集的这篇文章主要介绍Vue之bus数据传输优点以及弊端,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Vue之bus数据传输优点以及弊端

一、优缺点

优点: 传递数据较为方便,可以进行兄弟之间,父子之间的传递
缺点: 必须先on监听才能进行emit触发

二、使用方法
2.1 自行创建Bus组件

创建一个名为Bus.js的公共组件
在这里插入图片描述

//抛出Bus 供传输数据的组件引用  代码-->>
import Vue from 'vue'
export default new Vue

引用组件
谁用谁引用
Library.vue 发送信息

import Bus from '../common/bus.js';
//触发,“changeCurrentMsg”为触发的信号名
Bus.$emit("changeCurrentPage",1);

Books.vue接受信息

import Bus from '../common/bus.js';
//创建时就要监听,也可以在created中监听
mounted(){
	Bus.$on("changeCurrentPage",(val)=>{
	                this.currentPage=val;
	       });
}

//记得销毁,不然会叠加调用监听
 beforDestroy(){
         this.$bus.$off("vaPage");  //当这个组件销毁的时候bus也跟着一起销毁
}
2.2 使用vue-bus公共组件

和自定义创建bus的功能是一样的
优点: 避免重复的使用import导入bus.js文件
使用方法

1、安装:npm install vue-bus

2、在main.js中引入vue-bus

import Vue from 'vue';
import VueBus from 'vue-bus';
Vue.use(VueBus);

3、在组件中使用

//触发事件
this.$bus.emit("changeCurrentPage",1)
//接受事件
mounted(){
	this.$bus.on("changeCurrentPage",(val)=>{
	           this.currentPage=val;
	    });
}
//组件销毁接触事件绑定
destroyed:function(){
  this.$bus.off("changeCurrentPage")
}
解决问题1,可以使用vuex

最后

以上就是唠叨寒风为你收集整理的Vue之bus数据传输优点以及弊端的全部内容,希望文章能够帮你解决Vue之bus数据传输优点以及弊端所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部