4

我们刚刚将 webpack 3.0.0 添加到我们的 angular 2 项目中。我让它工作了,性能提高了 20-25%,尺寸减少了 50%(ish)。然后我将其重新定位到主分支并开始得到错误。

ERROR in chunk main [initial]
[name].bundle.js
Module \src\app\sales\models\index.ts has no static exports true

这个错误实际上是什么意思?我一直无法在网上找到任何有用的东西。修复它的任何提示?

自我提交以来,该\src\app\sales\models\index.ts文件没有更改,仅包含:

export * from './app-state';
export * from './purchase.model';
export * from './base.model';
export * from './view-state.model';
export * from './address';
export * from './core';
export * from './cover';
export * from './disclaimers';
export * from './family';
export * from './premium';
export * from './payments';
export * from './policy';
export * from './tracking.model';

在撤消我最初的 rebase 之后,我在我的工作之上重新设置了 main on 分支,然后找到了“破坏”webpack 的提交(谢天谢地git bisect),我正在慢慢地将更改带回去看看我是否可以保持工作。

查看 webpack 源代码,错误被抛出ConcatenatedModule.jsHarmonyImportSpecifierDependencyConcatenatedTemplate

    if(!Array.isArray(module.providedExports))
        throw new Error(`Module ${module.resource} has no static exports ${module.providedExports}`);

一些探索表明这module.providedExports是一个值为 的布尔值true,因此是错误的;但是,我无法确定设置该值的原因。

错误是什么意思?其他调试技巧?

4

1 回答 1

0

我也遇到了这个问题。我不知道为什么会抛出这个错误,但我已经通过显式导出替换“*”来修复它。

例如 :

前 :

export * from './foo';
export * from './bar';

后 :

export {Foo1, Foo2, /*...*/} from './foo';
export {Bar1, Bar2, /*...*/} from './bar'
于 2017-07-18T13:21:24.237 回答