我已经成功构建了许多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元素?我错过了什么吗?
1 回答
要使用自定义元素V1规范,您必须使用类 . 但是ES5浏览器不支持类 . 所以有一个适配器允许ES5浏览器像使用类一样运行 .
有关更多信息,请参阅:https://github.com/webcomponents/webcomponentsjs#custom-elements-es5-adapterjs .
在定义自定义元素之前,需要在ES5浏览器中包含适配器 . 这适用于Native组件以及Polymer 2组件 .