Угловая генерирующая строка для id - PullRequest
0 голосов
/ 25 декабря 2018

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

У меня есть следующая функция

static get timeNum() {
    return new Date().getTime();
}

generateId(id: string): string {
    return id + '_' + BaseForm.timeNum + '_' + this.index;
}

И яиспользуйте его при вводе, например [id]="generateId('toDate')" Однако похоже, что Angular пытается обновить это значение более одного раза, когда значение было отображено вначале и возникает ошибка.

ExpressionChangedAfterItHasBeenCheckedError: Выражение изменилось после того, как оно былопроверено.Предыдущее значение: 'id: type_1545750683934_0'.Текущее значение: 'id: type_1545750683944_0'.

Есть ли способ преодолеть это?Я генерирую поля и мне нужно дать им идентификатор только один раз, когда они создаются в DOM.

...