консоль не может войти в систему - PullRequest
0 голосов
/ 19 июня 2019

Попытка записать информацию из состояния в консоль возвращает ошибку «undefined не является объектом» (оценивается как «this.state.userName») '

Я очень плохо знаком с JS и поэтому действительно не знаю, какэто работает или как это должно работать

Я пытался заменить 'this.state.userName' на

 - (userName) => this.getState(userName)
 - this.state[userName]
 - 'this.state[1]

Ни один из них не дал желаемого эффекта

Вот мойкод:

  constructor(props){
    super(props);
    this.state = {
      userName:'User Name',
      userEmail:'',
      loggedIn: false,
    };
  }

  login() {
    console.log(this.state.userName);
  };

Я просто хочу, чтобы консоль регистрировала все, что назначено userName, а именно 'Имя пользователя'

вход в систему вызывается через: onPress={this.login}

Ответы [ 3 ]

0 голосов
/ 19 июня 2019

Вы можете использовать setState для изменения состояния в компоненте.Примечание: setState является асинхронной функцией

0 голосов
/ 26 июня 2019

Решение найдено (26/06/19):

onPress={this.login.bind(this)} or onPress={() => this.login()}

Найдено: Крис G

0 голосов
/ 19 июня 2019

Это быстрый способ исследовать объект, и вы, вероятно, увидите, что является причиной проблемы:

console.dir( this.state );

Он выведет расширяемый вид объекта на консоль, чтобы вы могли увидеть, чтов нем и каковы его свойства.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...