Почему я получаю ОШИБКУ: невозможно прочитать свойство '0' из неопределенного? - PullRequest
0 голосов
/ 24 марта 2020

Я не понимаю, почему я получаю неопределенную ошибку для tagged_Assets Пожалуйста, кто-нибудь может мне это объяснить, спасибо.

Model.ts

export class TaggedAssests {
   device_id: string;
   hasTag: boolean;
}

Component.ts

tagged_Assets: TaggedAssests[];

Использование в Component.ts

for(let i = 0; i < this.temp.length; i++) 
{   
        ERR-> this.tagged_Assets[i].device_id = this.temp[i].device_id;*
        this.tagged_Assets[i].hasTag = true;
}

Ответы [ 3 ]

0 голосов
/ 24 марта 2020

проблема здесь в том, что this.tagged_Assets равен undefined, поэтому вы не можете получить доступ к свойству device_id

, вы можете решить это, инициализируя this.tagged_Assets = [] любое изменение вашего блока l oop в

this.tagged_Assets[i] =  {
    device_id: this.temp[i].device_id,
    hasTag: true
}
0 голосов
/ 24 марта 2020

Init - tagged_Assets: TaggedAssests[] = [];

И используйте это так -

this.tagged_Assets[i] =  {
   device_id: this.temp[i].device_id,
   hasTag: true
}
0 голосов
/ 24 марта 2020

Попробуйте инициализировать массив:

tagged_Assets: TaggedAssests[] = [];

Или, возможно, используете?. оператор

this.tagged_Assets[i]?.device_id = this.temp[i].device_id;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...