消息订阅与发布技术
yarn add pubsub-js |
不必将信息一级一级的传递下去,可以实现任一组件之间通信
1、App 作为顶级 壳,不应该过多的涉及管理子组件之间的状态变化与通信问题,因此使用消息订阅与发布技术实现子组件之间的自发通信
Q:实现消息订阅与发布的库很多,你要选择哪个?
A:PubSub,历史悠久,应用广泛
何时订阅
A:在组件刚挂载上就要完成所有的订阅,一次性定义完成该组件所接收的所有消息类型。
1 | componentDidMount() { |
如何发送消息
A:引入 PubSub
后调用其 publish
方法
PubSub.publish('updateHeaderData', {data: activeName}) |
如何取消订阅
A:引入 PubSub
后调用其 unsubscribe
方法,一般再组件卸载时调用
1 | componentWillUnmount() { |