/ / Rendering Ъглови2 компоненти по селектор на класове - ъглова, ъглова2 шаблон

Оформяне Ъглови2 компоненти по селектор на класове - ъглова, ъглова2-шаблон

Въпросът ми е прост, но повярвай ми, че се опитвам да обвивам главата си около него часове наред.

Има компонент, който трябва да бъде инстанция чрез селектор на класове.

@Component({
selector: ".mycomponent",
template: "<h1>hello!</h1>"
})
export class MyComponent{}

Да кажем, че родителският компонент изглежда така:

@Component({
...
template:
`
<div class="mycomponent"></div> <!-- rendered -->
<div [class]=""mycomponent""></div> <!-- not rendered -->
`
})
export class ParentComponent{}

Защо втората версия никога не е такапостановено? Как да го направя? Дали това е въпрос на откриване на промяна или просто не би трябвало да работи по този начин? Аз бях свирил с стратегията за откриване на промени, която нямаше ефект. Също така се натъкнах DynamicComponentLoader, Надявам се, че мога да се оправя с него.

Има ли начин да заредите компонентите динамично чрез не-елемент селектори?

Отговори:

3 за отговор № 1

Това не трябва да работи. Компонентите и директивите се прилагат само за статично добавени маркери, атрибути и класове.

Ако искате динамично да добавяте / премахвате компоненти и директиви DynamicComponentLoader или createComponent() на ViewContainerRef


-1 за отговор № 2

Защо не работи, защото когато използвате [класа], това означава, че "класът" е attr, който не приписва клас "mycomponent" на div.