PhoneGap中文网

 找回密码
 立即注册
查看: 28787|回复: 1
打印 上一主题 下一主题

ionic3中通过Event实现事件广播事件监听

[复制链接]

28

主题

44

帖子

204

积分

中级会员

Rank: 3Rank: 3

积分
204
跳转到指定楼层
楼主
发表于 2018-9-18 12:23:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Events是一个发布 - 订阅式事件系统,用于在应用程序中发送和响应应用程序级别的事件。可以理解为:发布一个事件之后,可以将这个事件广播到整个工程的任何一个地方,只需要订阅就可以获取到传过来的值。


下面我们看看ionic3中通过Event如何实现事件广播事件监听。

官方链接:ionic Event 官方链接地址

在第一个页面中发布一个事件。
需要导入 Events 依赖包


  1. import { Events } from 'ionic-angular';

  2. // first page (publish an event when a user is created)
  3. constructor(public events: Events) {}
  4. createUser(user) {
  5.   console.log('User created!')
  6.   this.events.publish('user:created', user, Date.now());
  7. }
复制代码



订阅事件
第二个页面中订阅事件,并且获取到 第一个节目上面的数据值

  1. // second page (listen for the user created event after function is called)
  2. constructor(public events: Events) {
  3.   events.subscribe('user:created', (user, time) => {
  4.     // user and time are the same arguments passed in `events.publish(user, time)`
  5.     console.log('Welcome', user, 'at', time);
  6.   });
  7. }
复制代码


ionic3中通过Event事件成员变量说明:

subscribe(topic, handler)

事件订阅的主题,事件将触发他提供的方法。

topic:string 订阅的主题

handler:function 事件处理方法(一个回调事件)

unsubscribe(topic,handler)

取消订阅的主题,不再接收publish到主题事件。unsubscribe()返回值为 true,就表示移除成功。

publish(topic, eventData)

提交一个event给指定的topic





回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

ionic4视频教程

Archiver|手机版|小黑屋| PhoneGap中文网 ( 京ICP备13027796号-1 )  

GMT+8, 2024-12-22 14:57 , Processed in 0.063464 second(s), 30 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表