NPM 安装添加自定义警告消息
NPM Install add custom warning message
当用户尝试安装给定版本的库时,我应该如何添加警告消息?
例如,当您安装 babel-preset-es2015
时,您会收到以下警告:
Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update!
通过检查他们的代码,我看到他们在 package.json 中添加了一个 deprecated
条目,如下所示:
"deprecated": " Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update! ",
我可以很容易地补充这一点,但我实际上并没有贬低任何东西。我只是想警告用户他们正在安装 alpha 版本并且 API.
中可能会有变化
问题
是否有与 deprecated
类似的条目可以完成这项工作?
不一定有方法可以做到这一点,或者不能使用 "deprecated"
这样的给定字段
您可以做的是添加一个 post-install script,如果您将某个版本标记为 alpha,它会向控制台输出一个字符串,这有点变通。
// package.json
{
"version": "1.2.3-alpha.2",
"scripts": {
"postinstall": "node postinstall.js"
}
}
// postinstall.js
const package = require('./package.json')
if (package.version.includes('alpha')) {
console.log('You are using an alpha version. Beware!')
}
请查看以下内容:
- https://docs.npmjs.com/cli/deprecate
- https://docs.npmjs.com/deprecating-and-undeprecating-packages-or-package-versions
$ npm deprecate <pkg>[@<version>] <message>
示例:
$ npm deprecate some-lib@"< 1.0.0" " Thanks for using it. we recommend using new version, 1.x.x. Please check out https://example.com"
然后,
$ yarn
yarn install v1.16.0
info No lockfile found.
[1/4] Resolving packages...
warning some-lib@0.1.5: Thanks for using it. we recommend using new version, 1.x.x. Please check out https://example.com
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
✨ Done in 5.25s.
Time: 0h:00m:06s
当用户尝试安装给定版本的库时,我应该如何添加警告消息?
例如,当您安装 babel-preset-es2015
时,您会收到以下警告:
Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update!
通过检查他们的代码,我看到他们在 package.json 中添加了一个 deprecated
条目,如下所示:
"deprecated": " Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update! ",
我可以很容易地补充这一点,但我实际上并没有贬低任何东西。我只是想警告用户他们正在安装 alpha 版本并且 API.
中可能会有变化问题
是否有与 deprecated
类似的条目可以完成这项工作?
不一定有方法可以做到这一点,或者不能使用 "deprecated"
您可以做的是添加一个 post-install script,如果您将某个版本标记为 alpha,它会向控制台输出一个字符串,这有点变通。
// package.json
{
"version": "1.2.3-alpha.2",
"scripts": {
"postinstall": "node postinstall.js"
}
}
// postinstall.js
const package = require('./package.json')
if (package.version.includes('alpha')) {
console.log('You are using an alpha version. Beware!')
}
请查看以下内容:
- https://docs.npmjs.com/cli/deprecate
- https://docs.npmjs.com/deprecating-and-undeprecating-packages-or-package-versions
$ npm deprecate <pkg>[@<version>] <message>
示例:
$ npm deprecate some-lib@"< 1.0.0" " Thanks for using it. we recommend using new version, 1.x.x. Please check out https://example.com"
然后,
$ yarn
yarn install v1.16.0
info No lockfile found.
[1/4] Resolving packages...
warning some-lib@0.1.5: Thanks for using it. we recommend using new version, 1.x.x. Please check out https://example.com
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
✨ Done in 5.25s.
Time: 0h:00m:06s