在 useEffect 中调用调度?

Calling dispatch in useEffect?

目前我只是在 useEffect 钩子中调用它,没有将它作为依赖项,因为我只希望它 运行 一次。然而,这给出了 React Hook useEffect has a missing dependency: 'dispatch'. 我应该向依赖项添加分派还是对此有更好的做法?

  useEffect(() => {
    dispatch(handleGetUser());
  }, []);

调度函数在重新呈现之间不会改变。 eslint 警告不知道每个函数的作用以及它是否会被重新创建,因此如果 he/she 遗漏了某些内容

,它会显示警告提示用户

在这种情况下您可以安全地禁用警告并且不将调度作为依赖项包含在内

  useEffect(() => {
    dispatch(handleGetUser());

    // eslint-disable-next-line react-hooks/exhaustive-deps
  }, []);

即使您将 dispatch 作为依赖包含在内,您也不会看到副作用,因为 dispatch 不会更改,除非公开它的库有错误