Я борюсь за получение Material Design Lite (MDL) для работы с версией Angular2 2.0.0-rc.1, в частности с динамическим контентом.MDL и Angular2 2.0.0-rc.1
У меня есть два компонента, один из которых является основным компонентом приложения, который включает в себя второй. Я могу поместить HTML в шаблон основного компонента, использовать классы MDL, иметь компонент implement OnInit
и позвонить componentHandler.upgradeDom()
оттуда. Все HTML, добавленные до сих пор, теперь зарегистрированы в MDL.
Однако, когда у меня есть второй компонент, используйте service
и динамически добавляйте результат в свой шаблон, то этот материал не зарегистрирован первым componentHandler.upgradeDom()
. Я не понимаю, почему вызов componentHandler.upgradeDom()
со второго компонента после добавления динамического содержимого тоже не работает. Я подумал, что нужно. Использует ли он другой componentHandler
или что-то в этом роде?
Еще одна идея состояла бы в том, чтобы второй компонент каким-то образом вызывал функцию первого компонента, чтобы сообщить ему использовать его componentHandler
и обновить DOM оттуда, но я не знаю, как это сделать.
Для тестовых целей я добавил собственный Javascript-файл, который вызывает тот же самый, и кнопка запускает его - это работает.
Я нашел несколько директив на StackOverflow, которые, предположительно, автоматически регистрируют все новые HTML, но ни одна из них не работает для меня. Кто-нибудь знает, как это сделать для этой версии Angular2?