不同框架中的 Web 组件

Web Components in Different Frameworks

我想创建自定义 Web 组件并在各种框架中使用它们,例如 Angular、React 和 vanilla Javascript。

我的问题是我应该使用 Polymer(或任何其他库)创建一个还是通过扩展 "HTMLElement".

来写下来

有什么不同。

如果您想使用 Polymer 开发自定义元素,并将它们与另一个框架集成,您需要了解 Polymer 和其他框架的内部结构让它们完美地协同工作,尤其是对于复杂的架构。我想这是一个挑战。

此外,您还必须处理版本和不同框架版本之间的兼容性。例如,如果您使用 Polymer v3 开发组件,则很难将其与 Polymer v2 集成,尤其是在跨浏览器生态系统中。

最后,如果您打算 分发 您的自定义元素,您可以想象上述 2 个约束也将适用于目标开发人员。作为一名 React 开发人员,我不想导入另一个(Polymer)框架和 polyfill 来集成一些第 3 方组件。

出于这些原因,我建议设计 Vanilla 自定义元素,以便与最多的 Web 框架进行交互。