Ce qui suit est un extrait de code Redux que je débogue, rien de vraiment spécial. Ma question concerne le débogage dans Chrome Dev Tools.Techniques de débogage dans Chrome Dev Tools
Le problème consiste à définir le point d'arrêt (bp) dans le rappel .then(({ data }) => dispatch({
. Je peux définir un bp sur cette ligne mais à cause de la fonction de flèche, je ne peux pas définir un bp sur user: data.results[0],
dans cette fonction.
Que puis-je faire pour mettre un pb pour que je puisse inspecter data
ou data.results[0]
Puis-je déboguer en quelque sorte dans la chaîne de promesse?
export const login = (username, password) => (dispatch) => {
return dispatch({
type: LOGIN,
payload: {
username,
password,
}
})
.then(({ data }) => dispatch({
type: LOGIN_SUCCESS,
payload: {
user: data.results[0],
},
}))
.catch((error) => {
dispatch({
type: LOGIN_FAIL,
payload: {
error: error.message,
},
});
});
};
pourquoi ne pas simplement envelopper l'appel à 'dispatch' accolades de la même manière que le .catch? alors c'est une déclaration séparée sur laquelle vous pouvez vous arrêter. Oui, le code final n'en a pas forcément besoin, mais bon code vous permet de déboguer facilement aussi - allez avec ce qui rend votre vie plus facile, pas nécessairement le code le plus propre absolu –
Supposément, Chrome peut gérer les points d'inflexion sur les fonctions inline & flèches https://umaar.com/dev-tips/129-inline-breakpoints/) maintenant. N'a pas fonctionné pour moi lors de l'utilisation de cartes de cours cependant - mais vous pourriez avoir plus de succès – CodingIntrigue
Cheers James & Codingintrigue – Rory