每当我使用
yarn start:dev
启动我的 Nestjs 应用程序时,它都会运行,但我收到此错误:
src/auth/dto/auth.dto.ts:1:35 - error TS2307: Cannot find module 'class-validator' or its corresponding type declarations
每当我跑步
docker compose up
或 docker compose up --build
我的想法是,在我的映像构建过程中未安装
class-validator
模块,因此我尝试重建映像,但错误仍然存在。
Dockerfile
FROM node:18
WORKDIR /app-backend
COPY tsconfig*.json ./
COPY package.json yarn.lock ./
RUN yarn install
COPY . .
CMD ["yarn", "start:dev"]
dependencies
在package.json
:
{
"@nestjs/common": "^10.0.0",
"@nestjs/config": "^3.0.0",
"@nestjs/core": "^10.0.0",
"@nestjs/platform-express": "^10.0.0",
"class-transformer": "^0.5.1",
"class-validator": "^0.14.0",
"reflect-metadata": "^0.1.13",
"rxjs": "^7.8.1",
"typeorm": "^0.3.17"
}
我也遇到过这个问题。
我更改了我的 docker 文件之一:
FROM node:18
WORKDIR /usr/src/app
COPY package.json ./
COPY package-lock.json ./
RUN npm cache clean --force
RUN npm install
COPY . .
我还删除了docker容器和图像
P.S 也许你的node_modules在添加新包后没有更新