1

我刚刚为我的 React 项目从 Webpack 1.x 升级到了 Webpack 2.x,一切运行良好,除了热重载。我遇到的问题是,每次我更新项目中的文件时, HotModuleReplacementPlugin 都会出现错误Error TypeError: Cannot read property 'filter' of undefined

我已经设法找到了这个问题,在我看来这就像 HotModuleReplacementPlugin.js 中的一个错误,但我想确保我没有在我的配置中做一些奇怪的事情(即我没有对构建进行分块,这可能会导致这个?) 在作为 Webpack 存储库中的问题/公关提出之前。

第 113 行 HotModuleReplacementPlugin.js 中的代码在我的构建中var currentChunk = this.chunks.find(chunk => chunk.id === chunkId);返回-1,而不是 Chunk 对象,这是该行之后的逻辑所依赖的。

我已经能够通过将第 114 行的 if 语句从更改为来“修复”我的本地版本,if(currentChunk) {但是if(currentChunk && currentChunk.modules) {我在这里错过了什么吗?

4

1 回答 1

0

我现在已经深入了解了这个问题。这是由依赖关系q-io引起的,而依赖关系又具有collections的 dep 。Collections 会覆盖数组上的内置find函数并错误地实现它,因此返回 -1 而不是 undefined。

于 2017-05-03T11:30:46.153 回答