我已经成功构建了许多 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/