Node.js 从npm脚本获取版本级别
我想写的是,当通过运行程序包版本时运行哪一个。我不希望我的脚本通过Node.js 从npm脚本获取版本级别,node.js,npm,Node.js,Npm,我想写的是,当通过运行程序包版本时运行哪一个。我不希望我的脚本通过npm run\uuuuuuuuuuuuuuuuuuuuuuuuu直接调用;相反,当调用npm版本(或preversion或postversion等)时,它们应该由npm调用 如何在脚本中引用版本级参数 e、 g.如果我的脚本以preversion运行,并且是从npm version major调用的,那么我的脚本如何引用major?在我的脚本中,我可以引用process.env.npm\u config\u argv。它的值是一
npm run\uuuuuuuuuuuuuuuuuuuuuuuuu
直接调用;相反,当调用npm版本
(或preversion
或postversion
等)时,它们应该由npm调用
如何在脚本中引用版本级参数
e、 g.如果我的脚本以
preversion
运行,并且是从npm version major
调用的,那么我的脚本如何引用major
?在我的脚本中,我可以引用process.env.npm\u config\u argv
。它的值是一个JSON字符串,其中包含npm的原始参数
如果my package.json包含:
"scripts": {
"preversion": "node log_argv"
}
和log_argv.js
包含:
"scripts": {
"preversion": "node log_argv"
}
console.log('Type:',typeof process.env.npm_config_argv);
log('Value:',process.env.npm_config_argv);
log('Original npm args:',JSON.parse(process.env.npm_config_argv.Original);
抛出新错误(“中止”);
我运行npm版本补丁
,然后看到输出:
Type: string
Value: {"remain":["patch"],"cooked":["version","patch"],"original":["version","patch"]}
Original npm args: [ 'version', 'patch' ]
对不起,你能解释一下我如何用这个问题的答案来回答我的问题吗?我没有编写一个由
npm run myScript
直接调用的任意脚本;相反,在version
生命周期挂钩上调用myScript
。npm version
命令已经接受了一个参数并对其进行了自己的验证。我只想在myScript
中引用该arg的值。