首页 > 解决方案 > 如何在不创建新侦听器的情况下更新钩子?

问题描述

我创建了自己的自定义钩子,用于监听来自服务器的更新。我面临的问题是groups也可以null,所以我需要检查一下。因此,我需要它作为我的依赖项的一部分,以便useEffect可以在何时更新groups,但这也会导致创建多个侦听器,这是我不想要的。提前致谢 :)。

export function useStatusListener(groups, setGroups) {
    useEffect(() => {
        const unsubscribe = appRuntime.subscribe(
            "channel-name",
            (args) => {
                if (groups) {
                    // more code here...
                }
            }
        );

        return () => {
            unsubscribe();
        };
    }, [groups]);
}

标签: reactjsreact-hooks

解决方案


推荐阅读