Angular 2 本机视图封装
Angular 2 native view encapsulation
已经有一个问题的答案解释了ViewEncapsulation.Emulated
、ViewEncapsulation.Native
广告ViewEncapsulation.None
之间的区别。
假设有Electron应用程序保证与本机支持影子DOM和ViewEncapsulation.Native
的Chromium版本捆绑在一起。这种情况如何从本机封装中受益以避免仿真开销?
另一种可能的情况是调试 Angular 2 应用程序中的视图,这些视图由于ViewEncapsulation.Emulated
而严重混乱,由帮助程序属性和命名空间的 CSS 类组成。
是否可以将未指定encapsulation
的所有组件的默认封装更改为全局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>
。
在大多数情况下,使用脱机模板编译器时,性能不会成为Emulated
问题。
相关文章:
- 如何使用javascript从主svg对象动态创建svg视图框
- 正在使用$location.path(.)路由ng视图
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- angular.js没有'无法在PhoneGap中处理视图标记
- 如何包含特定于每个视图angularjs的javascript文件
- 通过在Dojo mobile ViewController.openExternalView中动态更改打开同一外部视图的
- Kendo:我该如何在树视图中创建一个递归的hieiarchy
- Ajax Live搜索发布到Laravel视图
- backbone.js无法渲染视图
- 根据某些条件在视图之间切换
- ng视图外的链接重定向到ng视图内的页面
- 如何在Jquery中发布后将值从视图返回到控制器
- 将日期时间作为 JSON 发送将无法在我的视图中正确显示
- 使用Scala Play Framework视图中的键检索映射值
- FF视图源|脚本高亮显示为红色
- 如何使bxslider仅在移动视图中处于活动状态
- 为什么不't我的变量在我的控制器中填充后在我的视图中呈现
- 在不破坏未定义函数的情况下,对多个视图使用单个js文件
- 在Rails中更新Div,而不更改更新请求后的视图
- Angular 2 本机视图封装