我试图调用一个取消订阅函数:
unsubscribeFromThingIds(arg.tids);
在本例中的await cacheEntryRemoved;
行之后。
函数定义如下:
export const unsubscribeFromThingIds = (tids: string[]) => {
followedThingIds = followedThingIds.filter(
id => !tids.includes(id)
);
const argument = { tids: followedThingIds } as ITimersChannelInitParams;
myIo!.emit("configure timers channel", argument);
};
(myIo
Socket.IO 客户端在哪里)
这目前对我不起作用。我目前正在调试这个问题。
我还尝试使用useEffect
带有返回清理函数的钩子在组件卸载时运行它,如下所示:
useEffect(() => {
return () => {
unsubscribeFromThingIds(getTimersQueryParams.tids);
};
}, [getTimersQueryParams]);
我想询问这些信息,因为我不确定我应该更多地研究这两个想法中的哪一个,或者我是否可以做另一件事更好。