我正在尝试使用React,Redux和socket.io构建一个应用程序!
我的问题是:如何像这样初始化事件监听器(在Redux中就是操作):
export const addNotif = () => (dispatch) => {
socket.on('notification', (message) => {
dispatch(notification(message))
})
}
由于我正在使用组件的函数式编程,无法访问componentWillMount,因此在React中需要进行翻译。
我的当前问题是,如果将方法
addNotif
传递给我的组件,每当有新通知到来时,存储就会更新,组件因此被重新渲染,因此它会添加另一个socket.on事件,并且这种情况会持续进行。
有任何解决方法可以干净地解决这个问题吗? 谢谢!