在开发过程中遇到两个毫无联系的组件,页面,可以公共EmitterUtil工具来实现跨组件事件调用。传参
1.发送事件(示例)
EmitterUtil.post(Keys.SHOP_COUNT, true)
第一个参数是命名事件ID,string类型的eventId不支持空字符串
第二个参数为要传递的参数
注:在A页面一个方法即将执行完成要与B页面发生交互的时候调用该方法
2.接收订阅事件(示例)
EmitterUtil.onSubscribe<boolean>(Keys.SHOP_COUNT, (data: boolean) => {
this.shopCount()
})
第一个参数同样是命名事件ID,string类型的eventId不支持空字符串
第二个参数为callback 事件的回调处理函数可以在该函数内进行参数赋值,方法调用
注:在该页面的生命周期aboutToAppear内调用
3.取消订阅事件(示例)
aboutToDisappear(): void {
EmitterUtil.unSubscribe(Keys.SHOP_COUNT)
}
注:参数是之前定义好的事件ID,调用取消订阅释放内存