const getToken = (userId, token) => { 22 | getmeToken(userId, token).then((info) => { 23 | console.log("INFO COMING", info); > 24 | if (info.error) { 25 | setInfo({ ...info, error: info.error }); 26 | } else { 27 | const clientToken = info.clientToken;¿Qué significa rechazo no controlado, no se pueden leer las propiedades de indefinido?
He definido el error y también le asigné un valor, a continuación se muestra el código de useState
const [info, setInfo] = useState({ loading: false, success: false, clientToken: null, error:"", instance: {}, });Según el código anterior, he definido y asignado el valor de error, entonces, ¿por qué el navegador sigue mostrando que no puede leer las propiedades de undefined . ¿Alguien puede aclarar esto?
El código de la función getmeToken está debajo
export const getmeToken = (userId, token) => { return fetch(` ${API}/payent/gettoken/${userId}`, { method: "GET", headers: { Accept: "application/json", "Content-Type": "application/json", Authorization: `Bearer ${token}` } }).then(response => { return response.json(); }) .catch(err => console.log(err)) }Primero, verifique la salida de la función getmeToken . Luego, puede usar info?.error en lugar de info.error para manejar este error.
Editar : verifique la URL ${API}/payent/gettoken/${userId} nuevamente. Creo que /payent/ es incorrecto ( /payment/ es correcto)