Angular 包含我的角度Web组件的样式,这样它就不会';t对所使用的部件放气

Angular 包含我的角度Web组件的样式,这样它就不会';t对所使用的部件放气,angular,web-component,angular-elements,Angular,Web Component,Angular Elements,我们使用Angular v6构建了一个新的网络组件。现在的问题是,当我在一个空白的应用程序中使用该组件时,它可以完美地工作,但当我在一个现有的应用程序中使用它时,它会完全破坏css 我能找到的原因是,当我使用bootstrap来构建我现有的应用程序,同时也使用bootstrap来构建网络组件时,它会导致内容-*与这两个组件相匹配,然后互相流血。比如说,row.[ngcontent-c1]一个这样的例子,我们如何确保它不会互相流血 我甚至手动尝试将web组件js文件样式从[ngcontent-%C

我们使用Angular v6构建了一个新的网络组件。现在的问题是,当我在一个空白的应用程序中使用该组件时,它可以完美地工作,但当我在一个现有的应用程序中使用它时,它会完全破坏css

我能找到的原因是,当我使用bootstrap来构建我现有的应用程序,同时也使用bootstrap来构建网络组件时,它会导致内容-*与这两个组件相匹配,然后互相流血。比如说,
row.[ngcontent-c1]
一个这样的例子,我们如何确保它不会互相流血

我甚至手动尝试将web组件js文件样式从
[ngcontent-%COMP%]
更改为
[ngcontent-mine%COMP%]
,但没有任何效果,即使在源代码中也没有更改

我调试的源代码是

而且。。。请自便


还查看了

如果您使用@Angular/elements作为Web组件公开的角度组件中的样式正在溢出,则需要在传递给createCustomElement的角度组件上,将ViewEncapsulation设置为ViewEncapsulation.ShadowDom,该组件使用ShadowDom v1规范

请注意,IE11中不支持ShadowDOM v1,您必须相应地进行多边形填充

Web组件中的任何样式都将位于阴影根目录内,而不会影响外部


尝试查看ViewEncapsulation组件属性。如果我没记错的话,它可能是ShadowDom,也可能是None。它不起作用。我在这里谈论的是带有angularis的web组件。这里有一个叫做
ViewEncapsulation的东西。Angular中的ShadowDom
,你能指出Angular文档中的一些链接吗?因为我看不到任何链接,好吧,我不好,这是新添加的东西,我想这就是它们的原因如果有人需要,请点击这里的链接