В моем сценарии я могу сослаться на process.env.npm_config_argv
. Его значение представляет собой строку JSON, которая содержит исходные аргументы в npm.
Если мой package.json содержит:
"scripts": {
"preversion": "node log_argv"
}
А log_argv.js
содержит:
console.log('Type:', typeof process.env.npm_config_argv);
console.log('Value:', process.env.npm_config_argv);
console.log('Original npm args:', JSON.parse(process.env.npm_config_argv).original);
throw new Error("aborting");
И я запускаю npm version patch
, затем я вижу вывод:
Type: string
Value: {"remain":["patch"],"cooked":["version","patch"],"original":["version","patch"]}
Original npm args: [ 'version', 'patch' ]