nodejs学习: ncu
一个可以升级插件升级后会自动修改package.json里的版本号工具
常用的更新包工具
在我们的日常工作中,我们需要对
package.json
进行更新,当然 ,我们可以手动进行。但有
ncu
这个工具,会更方便。
npm update,只能按照package.json中标注的版本号进行更新,升级后不会修改package.json中的版本号,需要自己手动修改,比较麻烦。
npm-check-updates 升级插件升级后会自动修改package.json里的版本号,简单方便。
安装
npm install -g npm-check-updates
常见用法
- 更新所有
- 按
scope
更新 - 在项目中带配置文件的更新
# 一次性更新所有的版本号
ncu -u
# 添加 fitler
ncu "/^@jswork/"
添加配置文件 .ncurc.json
{
"upgrade": true,
"filter": "/^@jswork/"
}
其它配置选项
--configFilePath rc config file path (default: directory of `packageFile` or ./ otherwise)
--configFileName rc config file name (default: .ncurc.{json,yml,js})
--cwd Used as current working directory for `spawn` in npm listing
--dep check only a specific section(s) of dependencies:
prod|dev|peer|optional|bundle (comma-delimited)
--engines-node include only packages that satisfy engines.node as
specified in the package file
-e, --error-level set the error-level. 1: exits with error code 0 if no
errors occur. 2: exits with error code 0 if no
packages need updating (useful for continuous
integration)
-f, --filter include only package names matching the given string,
comma-or-space-delimited list, or /regex/
-g, --global check global packages instead of in the current project
-i, --interactive Enable interactive prompts for each dependency;
Implies -u unless one of the json options are set
-j, --jsonAll output new package file instead of human-readable
message
--jsonDeps Will return output like `jsonAll` but only lists
`dependencies`, `devDependencies`, and
`optionalDependencies` of the new package data.
--jsonUpgraded output upgraded dependencies in json
-l, --loglevel what level of logs to report: silent, error, warn,
info, verbose, silly (default: warn)
-m, --minimal do not upgrade to newer versions that are already
satisfied by the existing version range (v2 behavior).
-n, --newest find the newest published versions available instead
of the latest stable versions
-p, --packageManager npm or bower (default: npm)
--packageData include stringified package file (use stdin instead)
--packageFile package file location (default: ./package.json)
--pre include -alpha, -beta, -rc. Default: 0. Default
with --newest and --greatest: 1.
--prefix Used as current working directory in bower and npm
-r, --registry specify third-party NPM registry
--removeRange remove version ranges from the final package version
-s, --silent don't output anything (--loglevel silent)
--semverLevel find the highest version within "major" or "minor"
-t, --greatest find the highest versions available instead of the
latest stable versions
--timeout a global timeout in ms
-u, --upgrade overwrite package file
-v, --version get version
-V get version
-x, --reject exclude packages matching the given string, comma-
delimited list, or regex
当模块使用
const ncu = require('npm-check-updates');
ncu.run({
// Any command-line option can be specified here.
// These are set by default:
jsonUpgraded: true,
packageManager: 'npm',
silent: true
}).then((upgraded) => {
console.log('dependencies to upgrade:', upgraded);
});
cheatsheet
功能 | 命令 |
---|---|
只查看,不升级 |
|
查看,升级 |
|
查看特定组件包 |
|