安装:
npm install --save eventemitter3
创建event.service.ts
import { Injectable } from '@angular/core';
import { EventEmitter } from 'eventemitter3';
@Injectable({
providedIn: 'root'
})
export class EventService {
public eventEmitter : any;
constructor() {
this.eventEmitter=new EventEmitter(); //这个实例就会被多个组件共享 来实现不同页面的数据通信
}
}
比如提现成功后更新个人账户信息,在提现页面的ts写入:
import { EventService } from '../../providers/event.service'
this.eventService.eventEmit.emit('userInfo'); //通知用户中心更新用户信息,userInfo为定义的变量名
个人中心页面的ts监听信息
import { EventService } from '../../providers/event.service'
ngOnInit() {
//监听注册 登录成功的事件
this.eventService.eventEmit.on('userInfo',()=>{
this.getUserInfo();
})
}