찾다

 >  Q&A  >  본문

작업 내에서 작업 수행: 다음 Redux에서 변화를 만들기 위해 중첩된 작업을 활용합니다.

페이지가 로드될 때 사용자를 인증하는 로직을 구현하고 싶습니다. 처음에는 쿠키에 토큰이 있는지 확인하고 싶었어요(checkUserToken),如果有或没有 - 调用另一个函数(fetchUserData),该函数将来会向服务器发出请求。最后,当服务器响应时 - 调用第三个函数(setUserData),该函数将使用用户数据填充userData

으아악

슬라이스에 비슷한 기능을 어떻게 구현하나요?

P粉614840363P粉614840363520일 전508

모든 응답(1)나는 대답할 것이다

  • P粉459440991

    P粉4594409912023-09-18 00:41:32

    Reducer 함수는 순수 함수이므로 작업 전달과 같은 부작용을 수행하지 않습니다. checkUserToken 不能分发任何动作,fetchUserData 不能返回函数值。在我看来,checkUserTokenfetchUserData 실제로는 비동기 작업입니다. 그들을 위해 thunk 액션을 ​​만들어 보세요.

    예:

    으아아아

    fetchUserData 动作可以直接访问 cookies/token,fetchUserData.fulfilled reducer case 也可以设置/更新用户数据状态。这意味着 setUserDatacheckUserToken 조치가 불필요할 수 있다는 점에 유의하세요.

    회신하다
    0
  • 취소회신하다