angular - 角度加载标签而不是 css 文件
问题描述
当我运行ng serve
angular 时不加载我的 css 文件,而是在标签内加载我的组件 scss,问题是当它以这种方式加载时,angular 编译器也会更改我在控制台上的类名称并使其更难开发,例如span.arrow
成为span.arrow[_ngcontent-c1]
.
我知道可以像任何网站一样正常查看我的 css 文件。如果可能的话,我不想关闭视图封装。
我没有更改任何默认设置,有什么想法吗?
例子
需要提一下,我正在使用 scss,这可能意味着什么。
解决方案
恐怕避免Angular 封装的唯一方法是将其设置为None
( ViewEncapsulation.None
) 直接进入组件。其他可能的ViewEncapsulation策略是:
- Native:
encapsulation: ViewEncapsulation.Native
基本上是旧的 ShadowDom 方法。 - ShadowDom:
encapsulation: ViewEncapsulation.ShadowDom
ShadowDom v1
通过使用这两个在您的组件 shadow-root 中拥有所有样式,因此可以“轻松调试”它们(如您所说)。
推荐阅读
- vue.js - 将 Jitsi 视频会议嵌入到 Vuejs 应用程序中
- css - 字体可以防止禁用连字吗?
- apache-kafka-streams - KStream to KStream Join- 输出记录在窗口内没有匹配记录的情况下发布可配置的时间
- apache-kafka - Kafka fetch max bytes 无法按预期工作
- django - RecursionError:超出最大递归深度
- c++ - 函数内部的模板结构
- sql-server - 使用 bak 文件恢复数据库。备份集保存现有数据库以外的数据库的备份
- ruby - RGeo:如何使用 SRID 将投影坐标转换为纬度/经度
- macos - 如何覆盖 DriverKit OSData 内部缓冲区的一部分?
- websocket - 如何更好地解决空手道中的 websocket 握手失败