Ошибка типа 6 Angular: невозможно прочитать свойство 'e4b7 ... f' из неопределенного - PullRequest
0 голосов
/ 27 ноября 2018

У меня возникает проблема, когда я пытаюсь инициализировать объект на основе интерфейса Typescript, я присваиваю значение, но все равно получаю ошибку, что свойство недоопределено.

interface ITableData {
  domainObjectName: string;
  domainObjectType: string;
  recordId: string;
}

interface IDataMap {
  recordId?: string;
  controlId?: string;
}

interface IMap {
  [key: string]: IDataMap;
}

tableData: ITableData[];
dataMap: IMap;

createDataMap() {
    Object.keys(this.tableData).forEach(i => {
      const recordId = this.tableData[i].recordId;
      this.dataMap[recordId] = {
        recordId: recordId,
        controlId: ''
      };
    });
  }

Основываясь на моих исследованиях и отладке, кажется, что машинописная работа жалуется на то, что я создаю ключ объекта без присвоения значения, но я присваиваю значение.

Я ценю любую помощь.

1 Ответ

0 голосов
/ 27 ноября 2018

Я полагаю, что проблема заключается именно здесь, this.dataMap[recordId] вы пытаетесь получить доступ к определенному идентификатору из неопределенной карты данных.Вы должны иметь данные в нем.Либо присвойте пустой массив, либо заполните его идентификатором, в котором содержится идентификатор, к которому вы хотите получить доступ.

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