小编Ahm*_*eem的帖子

选择器在调用时会返回根状态。Redux 工具包

我每次运行我的应用程序时都使用 reduxtoolkit 的 useSelector 。我的应用程序重新渲染了 5 次,并且不断收到此错误。我似乎找不到一种方法来摆脱这个错误。

选择器在调用时会返回根状态。这可能会导致不必要的重新渲染。返回整个状态的选择器几乎肯定是一个错误,因为每当状态发生任何变化时它们都会导致重新渲染。

错误图像

AppNavigator.tsx

const AppNavigator: FC<Props> = props => {
  const {loggedIn, busy} = useSelector(getAuthState);
  const dispatch = useDispatch();
  console.log('render');
  useEffect(() => {
    const fetchAuthInfo = async () => {
      try {
        dispatch(updateBusyState(true));
        const token = await getFromAsyncStorage(Keys.AUTH_TOKEN);
        if (!token) {
          return dispatch(updateBusyState(false));
        }

        const {data} = await client.get('/auth/is-auth', {
          headers: {
            Authorization: 'Bearer ' + token,
          },
        });
        dispatch(updateProfile(data.profile));
        dispatch(updateLoggedInState(true));
      } catch (error) {
        console.log('Auth error: ', error);
      }
      dispatch(updateBusyState(false));
    }; …
Run Code Online (Sandbox Code Playgroud)

react-native redux-toolkit

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

react-native ×1

redux-toolkit ×1