【发布时间】:2016-07-07 13:22:23
【问题描述】:
除非组件有encapsulation: ViewEncapsulation.Native,否则模板中的所有<style> 标签都放在主DOM 的<head> 部分中。有什么技巧可以破解吗?
我的用例是:
- 我动态加载外部 HTML 模板并将其嵌入,从而创建了一个组件。
- 我不希望链接或嵌入的样式影响应用程序的其余部分。
- 我不能使用 Native 封装,我必须保留主 DOM。那是因为我使用了一些操作 DOM 的 jQuery 库,但它们在 Shadow DOM 中无法按预期工作。此 jQuery 库使用此自定义组件中加载的指令工作。
- 我尝试将
<link href="url">替换为<style>@import "url"</style>,但它们总是移动到根目录<head>并影响整个应用程序。
有什么想法吗?如果没有办法解决这个问题,我应该尝试修复第 3 点。
谢谢!
【问题讨论】:
标签: jquery html typescript angular head