Как исправить не могу прочитать ошибку свойства в цикле foreach - PullRequest
1 голос
/ 22 апреля 2019

У меня есть цикл foreach, где я получаю данные из базы данных. Я хочу установить глобальную переменную для хранения «споттинг» (свойство каждого объекта). Но когда я вызываю глобальную переменную внутри цикла forEach, я получаю сообщение об ошибке «не могу установить определение свойства неопределенного» * ​​1001 *

когда я пытаюсь зарегистрировать глобальную переменную в любой другой части кода, она работает, но когда я делаю это в цикле forEach, она не работает

spotrating: any;

Позже в моем коде

temparr.forEach(function(firebaseSpot) {
        console.log(this.spotrating);
 });

Я ожидаю, что значение споттинга будет распечатано на консоли, но я получаю сообщение об ошибке. "не могу прочитать рейтинг спота по недвижимости неопределенного"

1 Ответ

0 голосов
/ 22 апреля 2019

Область действия this относится к вашей функции, поскольку вы не использовали жирную стрелку.spotrating не определено в вашей функции.Если вы хотите, чтобы this ссылался на внешнюю функцию (вызывающую ее), используйте жирную стрелку, как показано ниже.Скопинг тебя укусит.Я использую жирную стрелку по умолчанию, если только я не хочу, чтобы область обратного вызова или функция была этим обратным вызовом или функцией.Обычно нет.

temparr.forEach(firebaseSpot => {
        console.log(this.spotrating);
 });

Документы

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