Задать вопрос
@zlodiak

Почему конструктор вызывается повторно?

Есть два компонента. Один наследуется от другого. Пример тут.

Как видите, конструктор каждого выводит в консоль фразу. Объясните пожалуйста почему конструктор компонента HelloComponent отрабатывает два раза? Это видно из сообщения в консоли

Это нормальный ход событий, этого можно и нужно избегать?
  • Вопрос задан
  • 75 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ]
})
export class AppComponent extends HelloComponent { // Вот тут
  name = 'Angular 6';

  constructor() {
    super(); // Первый console.log('...')
    console.log('constructor app');
  }
}


Вы AppComponent унаследовали от HelloComponent. Вызвали super(). Потом еще раз запихнули HelloComponent в шаблон:

<hello name="{{ name }}"></hello> // Второй console.log('...')
<p>
  Start editing to see some magic happen :)
</p>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Хабр Москва
от 250 000 до 300 000 ₽
НТЦ ПРОТЕЙ Санкт-Петербург
от 150 000 до 300 000 ₽
Aporia Севастополь
от 70 000 до 100 000 ₽