我知道 Angular 2 组件指令使用 Shadow Dom,但我不清楚它们对 Web 组件规范的遵守程度有多深。例如,像聚合物元素一样,其他非 Angular 应用程序可以使用 HTML 导入来使用它们吗?
最佳答案
Angular 2 不是 Web 组件。您可以在 Angular 2 应用程序中使用 Web 组件,并且只要自定义元素和属性绑定(bind)不冲突,您就可以在其他应用程序中混合 Angular 2 应用程序(您只需引导每个主应用程序标签)。
Angular 2 使用影子 DOM 的事实是偶然的。事实上,在最新版本的 Preview/alpha 中,shadow DOM 并不是默认的。我预测 Shadow DOM 很少会与 Angular 2 一起使用,除非应用程序不使用任何第三方 Angular 2 组件。原因是很难创建一个在 Shadow DOM 和模拟 Shadow DOM 模式下都运行良好的第三方组件。
话虽如此,Angular 2 确实被设计为应用程序开发框架,而不是组件框架(尽管它旨在创建可重用的 Angular 2 组件以在 Angular 2 应用程序中使用),如果您不将其用作如果你使用了一个应用程序框架,那么你就使用了错误的工具。
关于web-component - Angular 2 组件可以被其他使用 HTML 导入的非 Angular 应用程序使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29894353/