如何在 Nuxt3 配置中配置 vite HMR 端口?
How to config vite HMR port in Nuxt3 config?
我在 Docker 组合设置中使用 Nuxt3,其中端口 8001 是节点容器的可访问端口 运行 Nuxt3 通过 nginx 反向代理引导。
我的 nuxt.config.ts 看起来像这样:
import { defineNuxtConfig } from 'nuxt'
// https://v3.nuxtjs.org/api/configuration/nuxt.config
export default defineNuxtConfig({
vite: {
server: {
hmr: {
clientPort: 8001,
}
}
}
})
不知何故,Nuxt3 似乎没有采用 vite HMR 的 clientPort 设置。该页面在开发设置中不断重新加载。
想知道是我配置错误还是 Nuxt3 还不能实现?
在与 Vue 类似的设置中,vite.config.js 中的此设置工作正常吗?
这个问题是由 Vite(默认)使用端口 :24678
引起的,并且被 Docker 阻止,导致 Vite 出错并 hard-reload。要解决此问题,您只需确保相关端口公开且可访问。
根据这个 GitHub issue 你可以将以下内容添加到你的 Docker 组合文件中(特别是 Nuxt3 服务,不是 nginx 服务):
# Your Nuxt 3 service
ports:
- "24678:24678" # or in your case: - "8001:8001"
您可能还需要将 vite.config.js
文件添加到 Nuxt3 文件夹的根目录,其中包含以下内容:
export default {
server: {
hmr: {
protocol: 'ws',
host: '0.0.0.0',
}
}
}
我在 Docker 组合设置中使用 Nuxt3,其中端口 8001 是节点容器的可访问端口 运行 Nuxt3 通过 nginx 反向代理引导。
我的 nuxt.config.ts 看起来像这样:
import { defineNuxtConfig } from 'nuxt'
// https://v3.nuxtjs.org/api/configuration/nuxt.config
export default defineNuxtConfig({
vite: {
server: {
hmr: {
clientPort: 8001,
}
}
}
})
不知何故,Nuxt3 似乎没有采用 vite HMR 的 clientPort 设置。该页面在开发设置中不断重新加载。
想知道是我配置错误还是 Nuxt3 还不能实现?
在与 Vue 类似的设置中,vite.config.js 中的此设置工作正常吗?
这个问题是由 Vite(默认)使用端口 :24678
引起的,并且被 Docker 阻止,导致 Vite 出错并 hard-reload。要解决此问题,您只需确保相关端口公开且可访问。
根据这个 GitHub issue 你可以将以下内容添加到你的 Docker 组合文件中(特别是 Nuxt3 服务,不是 nginx 服务):
# Your Nuxt 3 service
ports:
- "24678:24678" # or in your case: - "8001:8001"
您可能还需要将 vite.config.js
文件添加到 Nuxt3 文件夹的根目录,其中包含以下内容:
export default {
server: {
hmr: {
protocol: 'ws',
host: '0.0.0.0',
}
}
}