我正在使用pusher-js订阅用户事件,并且我在回调中传递的信息存在问题而不会保持更新。我使用反应路由器,并有一个位置'我的组件上下文。
connect() {
let {pusher, channelName, eventName} = this.props;
let pusher_channel = pusher.subscribe(channelName);
pusher_channel.bind(eventName, () => console.log(this.context.location.pathname));
}
出于演示目的,我只是控制台记录事件发生时用户所在的当前url路径名。当用户加载该应用程序时,此组件将加载并保持加载状态。问题是,如果用户导航到应用程序中的另一个页面并且有事件进入,则路径名不会反映用户所在的实际页面,而是用户在最初加载应用程序时所在的页面。
是否有办法保持回调更新已发生的任何上下文或道具更改?
答案 0 :(得分:1)