javascript - 如何让 Polymer 2.0 ES5 元素与 v1 规范一起工作?

标签 javascript polymer custom-element polymer-2.x

我已经成功构建了许多 Polymer 2.0 元素,它们在支持 ES6 的浏览器中运行良好。

当我尝试将它们转换为 ES5 时,浏览器会抛出一堆错误,如下所示:

Failed to construct 'HTMLElement': Please use the 'new' operator, this DOM object constructor cannot be called as a function.

经过一些研究,您似乎需要一个 native-shim,它与 webcomponentsjs-es5-loader 一起提供,但现在切换到它后我收到了一个新错误:

Class constructor DomModule cannot be invoked without 'new'

如何在 ES5 浏览器中使用转译的 Polymer 2.0 元素?我错过了什么吗?

最佳答案

要使用自定义元素 V1 规范,您必须使用类。但是 ES5 浏览器不支持类。所以有一个适配器允许 ES5 浏览器像使用类一样工作。

参见:https://github.com/webcomponents/webcomponentsjs#custom-elements-es5-adapterjs获取更多信息。

在定义自定义元素之前,您需要在 ES5 浏览器中包含适配器。这适用于原生组件以及 Polymer 2+ 组件。

关于javascript - 如何让 Polymer 2.0 ES5 元素与 v1 规范一起工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43002652/

相关文章:

javascript - 如何在 React Native 应用程序中添加 "Set as Wallpaper"选项

firebase - 使用 polymer 将 Firebase 中的匿名帐户合并到电子邮件和密码帐户

Angular 元素 : @Input decorator not working with variables

javascript - 自定义元素未设置/获取属性

javascript - Firefox 中的 shadow dom <slot> 标签

javascript - 我应该在 Javascript 中的什么位置添加 setTimeout 才能使其正常工作?

javascript - 使用全高内容

javascript - 如何添加 $watch 来跟踪 Angular 指令内 $cookies 中的值

javascript - HTML 在 Internet Explorer 中导入加载顺序

Dart/polymer 加载屏幕?