如何从命令行将参数传递给节点脚本?

时间:2019-06-05 22:50:32

标签: node.js

* package.json **

{
  "name": "test-project",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "build": "node build build_name"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {

  }
}

build.js

console.log("Building Code. Output File Name:", process.env.build_name);

命令行

$ npm run build build_name="web"

我想在执行build_name脚本时从命令行传递参数build。我将在我的build脚本中使用该参数。有人可以告诉我如何实现这一目标吗?另外,如果我没有从命令行传递build_name,我们可以从这里"build": "node build build_name"而不是build_name发送默认值。

1 个答案:

答案 0 :(得分:2)

使用“ yargs”模块。

第1步:

 npm install yargs

第2步:

 vi test.js

按i并复制以下代码并将其粘贴。

'use strict';

const args = require('yargs').argv;

console.log('Name: ' + args.name);  
console.log('Age: ' + args.age); 

第3步:执行

node test.js --name=jacob --age=45

第4步:输出

Name: jacob
Age: 45

让我知道是否有帮助。