【发布时间】:2018-07-26 04:21:49
【问题描述】:
使用 Angular 5,带有 scss 的 angular-cli。
我正在创建使用 3rd 方组件 (angular-tree-component) 的角度组件。我需要为树导入样式。由于 Angular 中的样式隔离(使用默认的模拟视图封装),实现它的唯一方法是使用 ::ng-deep,如下所示:
:host ::ng-deep {
@import '~angular-tree-component/dist/angular-tree-component.css';
}
但这不起作用 - 看起来@import 在:host ::ng-deep 中被忽略了。我通过将 css 文件的内容直接复制到方括号中来解决它,但它不是最理想的,好像引用的包已升级,然后我必须手动将内容替换为新样式。
我能想到的唯一其他解决方法是将视图封装更改为None,但它似乎更糟糕,因为它使样式全局化。
还有更好的选择吗?
【问题讨论】:
-
包括
.css扩展会产生完全不同的行为:参见sass-lang.com/documentation/file.SASS_REFERENCE.html#import
标签: angular angular-cli