Ошибка типа React Redux: не удается прочитать свойство ‘name’ неопределенного

#json #reactjs #redux #state

#json #reactjs #сокращение #состояние

Вопрос:

Я могу прочитать свои данные, когда я это сделаю const data = useSelector(state => state.user.userData); console.log(data);

Я вижу этот вывод на своей консоли

 {_id: "602afea4c03c9a38c8csd5", isAdmin: false, isAuth: true, email: "test@gmail.com", name: "John", …}
 

Когда я пытаюсь получить вывод электронной почты в моем объекте userData, как показано ниже.

 const data = useSelector(state => state.user.userData.email);
console.log(data);
 

У меня ошибка типа: не удается прочитать свойство ’email’ неопределенного значения.

Я также попробовал также назвать свойство, но это тоже не сработало.

 const data = useSelector(state => state.user.userData.name);
console.log(data);
 

Ничего не изменилось, все та же ошибка TypeError: не удается прочитать свойство ‘name’ неопределенного.

Я не могу получить доступ к какой-либо опоре внутри объекта userData

Комментарии:

1. ведение журнала в консоли асинхронное; это ваше состояние?

2. Я использую Redux, так как я могу это проверить?

3. Просматривая ваш код? A console.log обновит свой вывод, как только (например) обещание будет выполнено. Если вы извлекаете данные состояния из асинхронного действия, вам все равно нужно обработать рендеринг до завершения вызова.

Ответ №1:

Ответ «?» помог мне решить мою проблему. Как показано ниже.

const data = useSelector((state) => state.user.userData); console.log(данные?.электронная почта);