微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-Angular 2本机视图封装

已经有an answered question解释了ViewEncapsulation.Emulated,ViewEncapsulation.Native和ViewEncapsulation.None之间的区别.

假设有一个Electron应用程序可以保证与本机支持影子DOM和ViewEncapsulation.Native的Chromium版本捆绑在一起.这种情况如何从本机封装中受益以避免仿真开销?

一个可能的情况是调试Angular 2应用程序中的视图,这些视图由于ViewEncapsulation.Emulated而非常混乱,带有辅助属性和命名空间CSS类.

是否可以将所有未指定封装的组件的认封装全局更改为ViewEncapsulation.Native?

ViewEncapsulation.Native的其他实用工具是什么?

解决方法:

根据https://github.com/angular/angular/pull/7883这应该工作

import {CompilerConfig} from '@angular/compiler';

bootstrap(AppComponent, [{
  provide: CompilerConfig,
  useValue: new CompilerConfig({defaultEncapsulation: ViewEncapsulation.Native})
}])

我自己还没有尝试过.

我猜想ViewEncapsulation.Native在仅针对Chrome的情况下将是最有利的.在其他浏览器释放其对影子DOM的支持之前,似乎还需要花费一些时间.

主要好处是Angular2不需要向每个组件元素添加属性,并且并非所有组件样式都需要添加到< head>中.不再.

使用脱机模板编译器时,在大多数情况下,对于“仿真”而言,性能并不是什么大问题.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐