1.安装工具库PubSubJS
目前这个库比较主流
安装命令:npm i pubsub-js --save
2.引入
在需要订阅的文件中加上:
import PubSub from 'pubsub-js'
3.使用
现在有两个兄弟组件,list.js 与 search.js,两个都需要加上文件的引入,‘aaa’是消息名,在search中发布消息,list中订阅消息,list就可以获取search中的值了。
list.js:
componentDidMount(){
//订阅消息
this.token = PubSub.subscribe('aaa',(msg,data)=>{
this.setState(data)
})
}
componentWillUnmount(){
//取消订阅
PubSub.unsubscribe(this.token)
}
search.js:
PubSub.publish("aaa", { isLoading: false, users: res.data.items });