我通过babel(es2015预设)运行my-widget.js
以生成my-widget-es5.js
。这会导致Polymer出错。
Class constructor PolymerElement cannot be invoked without 'new'
at new MyWidget (my-widget.js:##)
at mw-widget.js [sm]:##
文件结构
out
|
-- my-widget-es5.js
js
|
-- my-widget.js
html
|
-- my-widget.html
MY-widget.html
<dom-module id="my-widget">
<template>
<script src="/out/my-widget-es5.js"></script>
</template>
</dom-module>
MY-widget.js
class MyWidget extends Polymer.Element {
static get is() {
return 'my-widget';
}
}
customElements.define(MyWidget.is, MyWidget);
答案 0 :(得分:3)
According to SO用户@joncarlson:
您可以使用Webcomponentsjs建议的custom-elements-es5-adapter.js
文件作为解决方法找到解决方案。
答案 1 :(得分:0)
请看下面的链接。只需使用es5捆绑预设版本即可开始使用。它将包括@Supersharp提到的custom-elements-es5-adapter.json的条件加载。
https://www.polymer-project.org/2.0/docs/tools/polymer-json#builds