Vite 阻止 Nodemon 观看

问题描述 投票:0回答:1

我正在 docker 内开发一个 vite-typescript-express-ssr-react 项目。 (我正在将根目录挂载到docker容器中)

我使用 vite hmr,它对于前端开发工作正常,但是当我使用 nodemon 启动项目进行后端开发时,nodemon 不会重新启动服务器

我正在使用 dev:server 脚本来启动后端开发。

"dev:server": "npx nodemon",
"dev:client": "npm run build:client && vite --config vite.config.ts dev --host 0.0.0.0",
"build:client": "vite build --outDir dist/client --ssrManifest",

这是我的nodemon.json

{
  "watch": ["src", "server.ts"],
  "ext": "ts,tsx",
  "exec": "tsx server.ts"
}

当从 dev:server 开始时,我在控制台中看到了这个,但它在保存时没有重新启动:

app  | > [email protected] dev:server
app  | > npx nodemon
app  | 
app  | 
app  | [nodemon] 3.0.2
app  | [nodemon] to restart at any time, enter `rs`
app  | [nodemon] watching path(s): src/**/* server.ts
app  | [nodemon] watching extensions: ts,tsx
app  | [nodemon] starting `tsx server.ts`

我的项目文件结构如下所示:

project-root/
|-- src/
|   |-- client/
|   |   |-- context/
|   |   |-- hooks/
|   |   |-- pages/
|   |   |-- router/
|   |   |-- ...
|   |
|   |-- server/
|   |   |-- config/
|   |   |-- controller/
|   |   |-- models/
|   |   |-- api/
|   |   |-- ...
|   |
|   |-- public/
|
|-- vite.config.ts
|-- tsconfig.json
|-- package.json
|-- server.ts
|-- nodemon.json
|-- Dockerfile
|-- docker-compose.yml
|-- ...
node.js nodemon
1个回答
0
投票

好吧,总是一样的,一旦我决定在 stackoverflow 上提问,我马上就明白了。

我将以下代码添加到我的nodemon.json 文件中

"legacyWatch": true,

在发布之前应该将docs标红,抱歉造成噪音......

应用程序未重新启动
在一些网络环境中(比如容器 运行 nodemon 读取已安装的驱动器),您 将需要使用

legacyWatch: true
来启用 Chokidar 的 投票。

通过 CLI,使用

--legacy-watch
或简称
-L

nodemon -L

虽然这应该是最后的手段,因为它会轮询 它能找到的每个文件。

© www.soinside.com 2019 - 2024. All rights reserved.