Vue组件间的通信pubsub-js实现步骤解析


Posted in Javascript onMarch 11, 2020

本文介绍使用发布订阅的方式进行vue组件间的通信

我认为这种方式比较自由, 不存在组件间的关系问题

1. 首先安装pubsub-js

npm install --save pubsub-js

2. 订阅方组件

import PubSub from 'pubsub-js'

mounted(){ // 执行异常代码
 // 订阅消息
 PubSub.subscribe('deleteTodo',(msg,index)=>{
  this.deleteTodo(index) // 调用deleteTodo方法执行真正的业务逻辑
 });
},

3. 发布方组件

<script>
 import PubSub from 'pubsub-js'
 export default{
  methods: {
   handlerEnter(isEnter){
    if (isEnter) {
     this.bgColor = 'gray';
     this.isShow = true;
    } else {
     this.bgColor = 'white';
     this.isShow = false;
    }
   },
   deleteItem(){
    // 表示从this对象中取出todo,index,deleteTodo三个对象
    const {todo, index, deleteTodo} = this
    if (window.confirm(`确认删除${todo.title}吗?`)) {
     // 发布消息
     PubSub.publish('deleteTodo', index); //deleteTodo一定要与订阅方名称一样,index是通信的具体数据
 
    }
 
   }
  }
 }
</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
广告切换效果(缓动切换)
May 27 Javascript
Jquery之美中不足小结
Feb 16 Javascript
JQuery在页面中添加和除移DOM示例代码
Jun 24 Javascript
JS实现判断碰撞的方法
Feb 11 Javascript
Javascript实现div的toggle效果实例分析
Jun 09 Javascript
jquery遍历json对象集合详解
May 18 Javascript
Bootstrap学习笔记之css样式设计(1)
Jun 07 Javascript
javascript十六进制数字和ASCII字符之间的转换方法
Dec 27 Javascript
js原生代码实现轮播图的实例讲解
Jul 28 Javascript
JavaScript实现多重继承的方法分析
Jan 09 Javascript
简单说说angular.json文件的使用
Oct 29 Javascript
Vue+Node实现的商城用户管理功能示例
Dec 23 Javascript
Vue事件处理原理及过程详解
Mar 11 #Javascript
Vue项目结合Vue-layer实现弹框式编辑功能(实例代码)
Mar 11 #Javascript
使用Node.js实现base64和png文件相互转换的方法
Mar 11 #Javascript
vue 移动端记录页面浏览位置的方法
Mar 11 #Javascript
Js逆向实现滑动验证码图片还原的示例代码
Mar 10 #Javascript
微信小程序获取公众号文章列表及显示文章的示例代码
Mar 10 #Javascript
jquery实现烟花效果(面向对象)
Mar 10 #jQuery
You might like
PHPMYADMIN 简明安装教程 推荐
2010/03/07 PHP
php实现产品加入购物车功能(1)
2020/07/23 PHP
浅析js封装和作用域
2013/07/09 Javascript
javascript获取form里的表单元素的示例代码
2014/02/14 Javascript
jQuery中end()方法用法实例
2015/01/08 Javascript
vue.js element-ui validate中代码不执行问题解决方法
2017/12/18 Javascript
JavaScript实现重力下落与弹性效果的方法分析
2017/12/20 Javascript
jQuery实现定时隐藏对话框的方法分析
2018/02/12 jQuery
vue.js 实现图片本地预览 裁剪 压缩 上传功能
2018/03/01 Javascript
JS中用EL表达式获取上下文参数值的方法
2018/03/28 Javascript
NestJs 静态目录配置详解
2019/03/12 Javascript
微信小程序使用npm包的方法步骤
2019/08/13 Javascript
[04:39]显微镜下的DOTA2第十三期—Pis卡尔个人秀
2014/04/04 DOTA
Python操作Mysql实例代码教程在线版(查询手册)
2013/02/18 Python
Python 执行字符串表达式函数(eval exec execfile)
2014/08/11 Python
python常见数制转换实例分析
2015/05/09 Python
Python下Fabric的简单部署方法
2015/07/14 Python
Python爬虫框架Scrapy实战之批量抓取招聘信息
2015/08/07 Python
Python使用Mechanize模块编写爬虫的要点解析
2016/03/31 Python
python将秒数转化为时间格式的实例
2018/09/16 Python
浅谈Pytorch中的torch.gather函数的含义
2019/08/18 Python
python读取csv文件指定行的2种方法详解
2020/02/13 Python
使用PyCharm官方中文语言包汉化PyCharm
2020/11/18 Python
彻底解决pip下载pytorch慢的问题方法
2021/03/01 Python
Canvas绘制浮动球效果的示例
2017/12/29 HTML / CSS
html5 canvas 实现光线沿不规则路径运动
2020/04/20 HTML / CSS
The North Face北面法国官网:美国著名户外品牌
2019/11/01 全球购物
xml有哪些解析技术?区别是什么
2016/04/26 面试题
期末总结的个人自我评价
2013/11/02 职场文书
函授自我鉴定
2013/11/06 职场文书
石油大学毕业生自荐信
2014/01/28 职场文书
民生工程实施方案
2014/03/22 职场文书
教师党员个人总结
2015/02/10 职场文书
2015学生会文艺部工作总结
2015/04/03 职场文书
【超详细】八大排序算法的各项比较以及各自特点
2021/03/31 Python
详解MySQL InnoDB存储引擎的内存管理
2021/04/08 MySQL