我目前使用的是 6.0.4,我想使用 6.5.2。做这个的最好方式是什么?CLI 中有什么东西吗?我是否手动更新每个 @nestjs 包?
当前的依赖项是:
"@nestjs/common": "^6.0.4",
"@nestjs/core": "^6.0.4",
"@nestjs/microservices": "^6.0.4",
"@nestjs/passport": "^6.1.0",
"@nestjs/platform-express": "^6.0.4",
"@nestjs/swagger": "^3.0.2",
Run Code Online (Sandbox Code Playgroud)
Mat*_*ler 42
您可以使用 Nest CLI 更新依赖项:
$ npm install -g @nestjs/cli
$ nest update
Run Code Online (Sandbox Code Playgroud)
你也可以 $ nest u
正如米克在他的评论中提到的,您可能需要添加--force
参数。
nest update --force
Run Code Online (Sandbox Code Playgroud)
Chu*_*ran 23
使用以下命令强制更新:
nest update -f -t latest
nest info
_ _ _ ___ _____ _____ _ _____
| \ | | | | |_ |/ ___|/ __ \| | |_ _|
| \| | ___ ___ | |_ | |\ `--. | / \/| | | |
| . ` | / _ \/ __|| __| | | `--. \| | | | | |
| |\ || __/\__ \| |_ /\__/ //\__/ /| \__/\| |_____| |_
\_| \_/ \___||___/ \__|\____/ \____/ \____/\_____/\___/
[System Information]
OS Version : macOS Catalina
NodeJS Version : v12.16.1
NPM Version : 6.13.4
[Nest Information]
platform-express version : 7.4.2
microservices version : 7.4.2
common version : 7.4.2
core version : 7.4.2
Run Code Online (Sandbox Code Playgroud)
你可以看看这个帖子
Ian*_*amz 17
我遵循了这个答案
npm install -g @nestjs/cli
npx npm-check-updates "/nestjs*/" -u
Run Code Online (Sandbox Code Playgroud)
该nest update
命令已被弃用。NestJS 创建者现在建议使用该npm-check-updates
包。
安装npm-check-updates
包:
npm i npm-check-updates
Run Code Online (Sandbox Code Playgroud)
现在更新NestJS相关包:
npx ncu -u -f "/nestjs*/"
Run Code Online (Sandbox Code Playgroud)
nestjs
此命令将仅更新名称中包含的依赖项package.json
然后运行:
npm install
Run Code Online (Sandbox Code Playgroud)
运行应用程序后,如果出现错误:Cannot find module...
使用以下命令手动一一安装软件包:
npm i @nestjs/config
npm i @nestjs/jwt
npm i @nestjs/platform-express
npm i @nestjs/core
npm i @nestjs/common
npm i @nestjs/typeorm --force
Run Code Online (Sandbox Code Playgroud)
安装npm-check-updates
包:
yarn add npm-check-updates
Run Code Online (Sandbox Code Playgroud)
更新 NestJS 包:
yarn npm-check-updates -u -f "/nestjs*/"
Run Code Online (Sandbox Code Playgroud)
然后,要安装依赖项,只需运行:
yarn
Run Code Online (Sandbox Code Playgroud)
我处理这个问题的方法是手动更新每个包。这有点乏味,但它使您可以完全控制每个包设置的版本。
我通常会在 git 中创建一个“功能”分支,比如feature/upgrade
我将更新包的地方
npm i @nestjs/common@latest @nestjs/core@latest ...
Run Code Online (Sandbox Code Playgroud)
在那里尝试一下,然后将该分支合并到 master (或任何您的开发分支)。Git消除了从另一个目录“复制”代码的需要,如果新的包版本破坏了某些东西,你有时间在推出生产之前在功能分支中修复它们。
归档时间: |
|
查看次数: |
17323 次 |
最近记录: |