我想重写我正在使用的开源组件的样式,但是禁用视图封装的唯一方法是在组件的装饰器上。当然,使用第三方模块意味着我无法编辑它的源代码。不然怎么做呢?
编辑
我知道这个/深奥的/风格的建议。我想要做的是用引导4的样式覆盖第三方组件中的表样式。自定义组件有一个应用于它的.table类,但是通过视图封装,引导4类是无法访问的。
我只想知道是否有一种方法可以完全禁用视图封装,而不必分叉代码并添加组件装饰器属性值“封装: ViewEncapsulation.None”供我自己使用。
发布于 2017-04-27 01:31:14
您可以使用/deep/ css选择器来覆盖嵌套组件的css样式。例如,该组件使用第三方组件创建带有".dropdown“类的下拉列表。
组件html:
<ss-multiselect-dropdown #multipleSelect
[settings]="settings"
[options]="options"
[(ngModel)]="selectedOptions"
(ngModelChange)="onSelectChange($event)"></ss-multiselect-dropdown>下面是覆盖下拉类的组件的css。
/deep/ .dropdown {
display: inline-block;
width: 100%;
}https://stackoverflow.com/questions/43646745
复制相似问题