J'ai essayé d'utiliser un exemple dans le fichier officiel document de mongodb,

तरीका:

export const login = (email, password) => async (dispatch) => {
  try {
    dispatch({
      type: USER_LOGIN_REQUEST,
    })

    const config = {
      headers: {
        'Content-Type': 'application/json',
      },
    }

    const { data } = await axios.post(
      '/users/login',
      { email, password },
      config
    )

    dispatch({
      type: USER_LOGIN_SUCCESS,
      payload: data,
    })

    localStorage.setItem('userInfo', JSON.stringify(data))
  } catch (error) {
    dispatch({
      type: USER_LOGIN_FAIL,
      payload:
        error.response && error.response.data.message
          ? error.response.data.message
          : error.message,
    })
  }
}

Google Cloud fournit une API pour activer les API. C'est ce qu'on appelle l'API d'utilisation des services.

const redirect = location.search ? location.search.split('=')[1] : '/'

const submitHandler = (e) => {
  e.preventDefault()
  dispatch(login(email, password))
  history.push(redirect)
}

Installer un runtime auto-hébergé sur un serveur

const submitHandler = async (e) => {
  e.preventDefault()
  await dispatch(login(email, password))
  history.push(redirect)
}
1
pkdq 3 अप्रैल 2021, 17:58

1 उत्तर

सबसे बढ़िया उत्तर

आइए मान लें कि जब नीचे

dispatch({
      type: USER_LOGIN_SUCCESS,
      payload: data,
    })

ऐसा होता है कि आपके reduxState में किसी प्रकार की संपत्ति है जैसे isLoggedIn या isAuthenticated। अब आप एक redirect को useEffect के अंदर ट्रिगर करने के लिए उसी प्रॉपर्टी का उपयोग कर सकते हैं:

const {isAuthenticated} = reduxState;
useEffect(()=>{
if(isAuthenticated) history.push(redirect);
},[isAuthenticated])

और आपका submitHandler निम्नलिखित हो सकता है:-

const submitHandler = (e) => {
  e.preventDefault()
  dispatch(login(email, password))
}
2
Lakshya Thakur 3 अप्रैल 2021, 18:07
1
Quelqu'un pourrait-il expliquer l'erreur ? Merci.
 – 
pkdq
3 अप्रैल 2021, 18:16
1
API REST d'utilisation des services
 – 
Lakshya Thakur
3 अप्रैल 2021, 18:17