นำร่องหลังจาก dispatchin การกระทำ redux กับเป็นชนพื้นเมืองที่มีปฏิกิริยา

0

คำถาม

ฉันพยายามจะแนะนำให้รู้จักการตรวจสอบสิทธิ์ของโต้ตอบเป็นชนพื้นเมืองที่โปรแกรมเกี่ยวกับ redux หลังจากแยกชิ้นส่วนในการล็อกอินการการกระทำรหัสในการล็อกอินจอภาพ:

const dispatch = useDispatch();
const auth = useSelector(state => state.authentication);

const onSubmit = (data: {email: string; password: string}) => {
  dispatch(loginUser(data));
  auth.isAuth && navigation.navigate('Home');
};
รหัสของการกระทำการล็อกอินคือ:

export const loginUser = data => async dispatch => {
  try {
    const res = await axios({
      method: 'post',
      url: `${API_URl}/auth/login`,
      data,
    });
    dispatch({type: LOGIN_SUCCESS, payload: res.data});    
  } catch (error) {
    dispatch({type: GET_ERRORS, payload: error.response.data});
    dispatch({type: LOGIN_FAILED, payload: error.response.data});
  }
};
รหัสสำหรับ reducer คือด้านบน:

 case LOGIN_SUCCESS:
 case REGISTER_SUCCESS:
      return {
        ...state,
        user: payload.user,
        isAuth: true,
        message: null,
      };

ฉันต้องการที่จะนำมายังอีกจอภาพ'กลับบ้านแต่นี่มันไม่จบสำหรับครั้งแรกหลังจากแยกชิ้นส่วนการล็อกอินการกระทำแต่ฉันต้องยืนยันก่อนว่าทางรัฐมอนเปลี่ย: ป้อนรูปภาพรายละเอียดที่คอนโซลหลังจากกดปุ่มล็อกอิน

1

คำตอบที่ดีที่สุด

0

คุณกำลังโทรหา onSubmitซึ่งโทรมา loginUser. ตอน loginUser ถึงแม้ว่าคุณมีรูปแบบ api โทรซึ่งเป็น async มากกว่าซึ่งหมายความว่าหลังจากที่คุณโทรหา loginUser, auth.isAuth จะเป็นเรื่องจริงแล้ว

คุณต้องการเพื่อให้แน่ใจว่า auth.isAuth === truecomponentDidMount ของของคุณล็อกอินจอภาพ,หรือใช้เหมือนบางอย่าง redux-observable ต้องมีปฏิกิริยาอย่างการกระทำที่กำลังถูกส่งและแสดงทาง

2021-11-24 01:04:12

ฉันพยายามที่จะใช้ปลายทางของการตรวจสอบสิทธิ์และนำร่องอยู่ใน useEffect กับอาเรย์ของ dependencies emty แต่ปัญหา stilled.
smichi

ดูสิ่งที่ docs ของโต้ตอบ-ระบบนำทางพูดเกี่ยวกับการตรวจสอบสิทธิ์ของ flows: reactnavigation.org/docs/auth-flow
romin21

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่