在Attribute指令的給定示例中(即添加外觀/行爲的指令),我們在主機元素上設置了相當簡單的樣式。指令中的Angular2樣式
import {Directive, ElementRef } from 'angular2/core';
@Directive({
selector: '[myHighlight]'
})
export class HighlightDirective {
constructor(element) {
element.nativeElement.style.backgroundColor = 'yellow';
}
static get parameters(){
return [[ElementRef]];
}
而不是設置樣式,我可以使用樣式嗎?例如
@Directive({
selector: '[myHighlight]',
styles: [':host { background-color: yellow; }']
})
這似乎不適用於我?
我正在做一些稍微複雜的事情,這導致了相當數量的monolothic代碼,設置了很多樣式,使用AnimationBuilder等等。感覺對我來說,將它分成類和動畫會更好在CSS中。
ViewEncapsulation =模擬/默認如果重要?
雖然已經過了一年,爲後人的緣故,我加了下面的答案。它涉及使用組件作爲指令,並更改默認的ViewEncapsulation。請參閱下面的答案。 - 乾杯 –