0
votes

Réagit JS Contexte non capturé (en promesse) TypeError: impossible de lire les «données» de la propriété non définie

J'utilise réagir et demander des données d'API, mais il semble que mes "données" deviennent une erreur

ma classe comme ci-dessous: xxx

J'essaie faire une connexion. Après une demande d'utilisateur, je recevrai des données d'API et SETState mon var

L'invite d'erreur que mon résultat .Data .Success était une erreur. Je creuse des recherches sur le débordement de pile, il a mentionné la fonction arrow que j'ai utilisée. Ou est-ce une erreur Snytax?


0 commentaires

3 Réponses :


1
votes

On dirait que votre API peut résulter non défini comme réponse.

Faites un chèque sur les résultats xxx


1 commentaires

Oh oui, cela semble que cela semble que l'API renvoie une réponse "non définie" comme réponse, quand j'essaie résultat && résultat.data.status === "succès" , quand j'essaie console .Log.Result Il sort indéfini



1
votes

Je pense que ce résultat.data.data.status est la bonne façon. Ou vous pouvez l'imprimer avec console.log () ou débogger pour voir quel format le résultat est


6 commentaires

Voulez-vous dire que je devrais essayer résultat.data.data.status au lieu de résultat.data.status ?


Oui, vous pouvez d'abord utiliser Postman pour tester si l'API est disponible. Il est également recommandé de ne pas appeler l'API dans la fonction de constructeur, mais de l'appeler dans la composante du cycle de vieDidmount ()


Vous avez oublié un point clé, est la documentation JSON.PARSE? Parce que certains ont besoin d'analyser


L'API fonctionne. Eh bien, j'ai appelé cette fonction Login car je souhaite le déclencher pendant que l'utilisateur "OnClick" sur un bouton (que je n'ai désactivé pas sur le code ci-dessus), il a été utilisé pour envoyer le nom d'utilisateur et le mot de passe de retour à l'API et vérifiez les informations d'identification de l'utilisateur


Oui c'est Json Parse, bien en fait j'ai trouvé mon problème


Pouvez-vous décrire votre problème?



0
votes

OK c'est mon mauvais. Le processus global de mon identifiant est que mon API transmettra un jeton après que l'utilisateur se connecte avec succès. Plus tard dans cette partie, dans un autre JS de la mine, qui exportant API par défaut utilise des intercepteurs d'Axios. Je fixe une fonction getToken là-bas, mais au début je suis en train de traiter la connexion, aucun jeton n'est stocké à mon frontend. Comme dans le résultat, les interceptions renvoient une erreur - qui cause un indéfini

​​mon code API comme suit: xxx


0 commentaires