我刚刚通过 Nginx 和 pm2 在生产环境中部署了我的第一个 Next.js 应用程序。一切似乎都很好,但该应用程序经常在浏览器上一段时间后重新加载。我看到了 webpack-hmr
也在我的 production
中运行服务器。 (我认为在生产中没有必要)
我正在使用自定义 server.js
我使用 next build
在生产环境中运行我的应用程序然后 NODE_ENV=production node server.js
命令,然后使用 pm2
重新启动我的服务器.
我在下面添加了我的开发工具的网络选项卡的屏幕截图,其中显示了在 production
上运行的 HMR .如 HMR
是浏览器重新加载的可能原因,那么我应该怎么做才能在生产中禁用它?
而且,如果由于 HMR 而没有发生“频繁重新加载”,那么导致它的原因是什么?
你们在生产中遇到过同样的问题吗?如果是这样,请分享您的知识和经验。谢谢。
编辑:我也在用 next-pwa并且我的控制台上不断显示警告 -
GenerateSW has been called multiple times, perhaps due to running webpack in --watch mode. The precache manifest generated after the first call may be inaccurate! Please see https://github.com/GoogleChrome/workbox/issues/1790 for more information.
最佳答案
通过禁用 pwa
修复它在开发时
const prod = process.env.NODE_ENV === 'production'
module.exports = withPWA({
pwa: {
dest: 'public',
disable: prod ? false : true
}
})
关于reactjs - Next.js 应用程序在生产中频繁重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62224915/