Angular2设置视图封装全局

时间:2016-09-12 14:28:26

标签: angular

我已决定为项目中的所有组件设置ViewEncapsulationNone

那么,如何将ViewEncapsulation.None全局设置为整个项目?而不是在我的每个组件装饰器中设置它。

注意:仅供参考,我的deps在RC.6上

编辑:GünterZöchbauer提供的第二个解决方案也适用于2.1.2

1 个答案:

答案 0 :(得分:26)

您可以通过传递自定义CompilerConfig来设置默认视图封装。 此功能已添加到RC.2(功能列表中的最后一项)

<强> 1。您可以在NgModule级别设置

这种方式不再起作用

<击>

<击>
@NgModule({
    // imports, declaration, bootstrap, etc..
    providers: [{
        provide: CompilerConfig, 
        useValue: new CompilerConfig({
            defaultEncapsulation: ViewEncapsulation.None
        })
    }]
})
export class AppModule {}

Plunker example

<击>

<强> 2。将其设置为bootstrap级别(感谢yurzui)

platformBrowserDynamic().bootstrapModule(AppModule, [
    {
        defaultEncapsulation: ViewEncapsulation.None
    }
]);

请注意,您需要从ViewEncapsulation

导入@angular/core