Javascript 不同框架中的Web组件

Javascript 不同框架中的Web组件,javascript,angular,reactjs,polymer,web-component,Javascript,Angular,Reactjs,Polymer,Web Component,我想创建自定义Web组件,并在Angular、React和vanilla Javascript等各种框架中使用它们 我的问题是我应该使用Polymer(或任何其他库)创建一个或通过扩展“HtmleElement”来写下它吗 区别是什么。如果你想用聚合物开发自定义元素,并将它们与另一个框架集成,你需要了解聚合物和其他框架的内部结构,使它们完美地协同工作,特别是对于复杂的体系结构。我想这是一个挑战 此外,您还必须处理版本以及不同框架版本之间的兼容性。例如,如果您使用Polymer v3开发组件,il

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

我的问题是我应该使用Polymer(或任何其他库)创建一个或通过扩展“HtmleElement”来写下它吗


区别是什么。

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

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

最后,如果您打算分发您的自定义元素,您可以想象上述两个约束也将应用于目标开发人员。作为React开发人员,我不希望必须导入另一个(聚合物)框架和polyfill来集成一些第三方组件


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

他们对如何实现web组件都有不同的看法。Polymer致力于通过polyfills和其他方式使未来的“香草”web组件变得可用。Polymer的目标是不必在默认情况下提供的end-->web组件中使用任何Polyfills。我建议避免使用任何框架,如Polymer,只需编写本机。聚合物真的没有增加多少,除了一个与真实Web组件无关的抽象级别。学习构造函数的规则以及如何在shadowdom内部和外部使用CSS。但要避免任何框架。我认为它们不值得。模具可能是一个有趣的选择。它是由爱奥尼亚公司创建的,并在中编译您的“模具组件”到本机web组件