ChunkLoadError: 加载块node_modules_next_dist_client_dev_noop_js失败。

218

我一直在学习 Next.js 网站上的基础教程,当我到达 全局样式 这一步时,我开始遇到以下运行时错误:

ChunkLoadError: Loading chunk node_modules_next_dist_client_dev_noop_js failed.
(error: http://localhost:3000/_next/static/chunks/fallback/node_modules_next_dist_client_dev_noop_js.js)

错误1:
错误截图(1)

错误2:
错误截图(2)

我按照所有步骤做了,当我关闭错误弹窗后,应用程序可以正常工作。

如果有人能够提供任何指导,我将非常感激!

8个回答

597

删除项目根目录下的.next文件夹,重新启动项目,并强制刷新页面(Shift+F5 / Cmd+Shift+R)以清除缓存。

这显然是一个缓存问题。在查阅了GH Issues和各种博客文章后,我的结论是,没有人知道与这个与webpack相关的错误到底发生了什么,可能是由于Next.js的行为引起的。


28
顺便提一下:这个回答已经发布1周了,已经有5个赞了。这是一个真正的问题,无论它来自哪里,都需要解决。 - deb
5
让我来点赞,这发生在修改重写规则和更改页面文件夹结构之后... :) - Richard87
2
对于那些使用 Nx 的人,我删除了 /dist/ 文件夹才使其正常工作。可能实际上只需要清理其中一个 next 文件夹,但是对我来说,那样做有效。 - John Fisher
1
@MichaelEdwards 你好,感谢反馈。我猜是因为我先回答了。amin-amin 写了同样的答案,必须删除缓存的事实已经被暗示了。我会编辑我的答案,使其更加清晰明了。 - deb
这就是答案,它发生的原因是由于对结构进行了删除和操作。 - Mohammed Saber Mohammed
显示剩余10条评论

32

在删除 /public 文件夹中的文件后,我遇到了这个错误。

如何解决:

  1. 删除 /.next 文件夹。
  2. 重新启动项目。
  3. 在浏览器中强制刷新以删除缓存。

在我的情况下,最后一步并不是必要的。尽管清除缓存不会有害。 - undefined

6

我的情况是,我使用 Firebase 云函数托管时,我的 Next.js 构建目录与默认的不同。

按照以下类似的步骤操作:

  1. 删除构建目录(distDir),我的构建目录叫做 nextjs;
  2. 重新启动服务器;
  3. 强制刷新浏览器。

2

对于我来说,当我在tailwind.config.js中添加一个插件(使用tailwind)时,出现了问题。

也许这会帮助某些人找到奇怪的nextjs行为。


1
1- 清除浏览器缓存 2- 刷新页面 3- 重新启动您的项目

1

我在VSC中删除了.next文件夹,控制台日志生成了更多的错误信息,于是我将该文件夹恢复到项目中。错误消失了。


这个错误又出现了。我需要进行更多的故障排除。一旦完全解决,我会再次评论回复。 - Natashia bryson

1
在我的情况下,我找不到需要删除的 .next 文件夹。
删除 build/ 文件夹下的所有内容。这对我有用。

0
在我的情况下,当我在本地运行时,next-sentry 7.51.2 导致了这个问题。我将其移除后,一切都恢复正常了。在那之前,它在本地运行了很长时间,我猜测可能与在本地运行时加载的 Next 的脚本中的第三方脚本错误有关,例如在我的情况下,其中一个脚本在本地主机上抛出了 CORS 错误。
使用的是 Next 13.0.7 版本。
如果你遇到了这个问题,尝试逐个回退提交,看看是否能找到一个历史点,它在那里是正常工作的(`git checkout HEAD^`)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接