Angular 错误类型错误:没有';就无法调用类构造函数EventEmitter;新';
升级到Angular 10后,我发现一些组件出现以下错误-Angular 错误类型错误:没有';就无法调用类构造函数EventEmitter;新';,angular,typescript,ecmascript-6,angular-storybook,Angular,Typescript,Ecmascript 6,Angular Storybook,升级到Angular 10后,我发现一些组件出现以下错误- ERROR TypeError: Class constructor EventEmitter_ cannot be invoked without 'new' at new ZoneAwareEventEmitter (index.js:34) at new GridComponent (index.js:6167) at createClass (core.js:21921) at createDir
ERROR TypeError: Class constructor EventEmitter_ cannot be invoked without 'new'
at new ZoneAwareEventEmitter (index.js:34)
at new GridComponent (index.js:6167)
at createClass (core.js:21921)
at createDirectiveInstance (core.js:21790)
at createViewNodes (core.js:30281)
at callViewAction (core.js:30597)
at execComponentViewsAction (core.js:30516)
at createViewNodes (core.js:30309)
at callViewAction (core.js:30597)
at execComponentViewsAction (core.js:30516)
导致此问题的代码-
import { EventEmitter } from "@angular/core";
export class ZoneAwareEventEmitter extends EventEmitter {
constructor(ngZone, isAsync = false) {
super(isAsync);
this.ngZone = ngZone;
}
}
我错过什么了吗
提前感谢您的帮助 将此添加到网页包配置:
resolve: {
mainFields: ['es2015', 'browser', 'module', 'main']
},
此问题发生在使用的项目中的Webpack生成中。默认网页包配置解析来自
节点_模块/@progress/kendo角度网格的fesm5
模块,该模块尝试使用es5扩展EventEmitter类,并导致错误。更改网页包配置中的resolve
的mainFields
属性以对es2015
模块进行优先级排序,为我解决了这一问题。请发布您的组件代码。确保您正在从@angular/core
@T.J.Crowder导入EventEmitter
,我更新了代码,也遇到了同样的问题,我正在实现Storybook这类似于关于这个问题的提示,这就是让剑道ui在NX angular workspace库中工作的原因