首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在angular2/4中禁用第三方组件中的视图封装?

如何在angular2/4中禁用第三方组件中的视图封装?
EN

Stack Overflow用户
提问于 2017-04-27 00:35:37
回答 1查看 1.3K关注 0票数 7

我想重写我正在使用的开源组件的样式,但是禁用视图封装的唯一方法是在组件的装饰器上。当然,使用第三方模块意味着我无法编辑它的源代码。不然怎么做呢?

编辑

我知道这个/深奥的/风格的建议。我想要做的是用引导4的样式覆盖第三方组件中的表样式。自定义组件有一个应用于它的.table类,但是通过视图封装,引导4类是无法访问的。

我只想知道是否有一种方法可以完全禁用视图封装,而不必分叉代码并添加组件装饰器属性值“封装: ViewEncapsulation.None”供我自己使用。

EN

回答 1

Stack Overflow用户

发布于 2017-04-27 01:31:14

您可以使用/deep/ css选择器来覆盖嵌套组件的css样式。例如,该组件使用第三方组件创建带有".dropdown“类的下拉列表。

组件html:

代码语言:javascript
运行
复制
 <ss-multiselect-dropdown #multipleSelect
                     [settings]="settings"
                     [options]="options"
                     [(ngModel)]="selectedOptions"
                     (ngModelChange)="onSelectChange($event)"></ss-multiselect-dropdown>

下面是覆盖下拉类的组件的css。

代码语言:javascript
运行
复制
/deep/ .dropdown {
  display: inline-block;
  width: 100%;
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43646745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档