如何获取命令行参数

需求场景:把多个项目合并成一个大的项目,公用配置、共用一些封装好的方法,运行项目的时候,需要配置入口,就涉及到从命令行获取文件名。

  • 方式一:
var projectName = process.argv[index];
//process.argv
[ 
 'C:\\Program Files\\nodejs\\node.exe',
  'G:\\test\\demo_01\\node_modules\\webpack-dev-server\\bin\\webpack-dev-server.js',
  '-n',
  'test'
   ]
  • 方式二:
    使用yargs: Yargs通过解析参数和生成交互式命令行菜单(包括)。
npm i  -D yargs 
var argv = require('yargs').argv;

argv是一个对象,包含命令行中一些“菜单”,我们可以直接进行使用(n:代表项目名)

argv :{
 _: [],
  cache: null,
  bail: null,
  profile: null,
  color: false,
  colors: false,
  liveReload: true,
  'live-reload': true,
  serveIndex: true,
  'serve-index': true,
  inline: true,
  info: true,
  n: 'test',
  'info-verbosity': 'info',
  infoVerbosity: 'info',
  'client-log-level': 'info',
  clientLogLevel: 'info',
  host: 'localhost',
  '$0':
   'node_modules\\webpack-dev-server\\bin\\webpack-dev-server.js' 
   }

alias: 给命令重新起别名

const argv = require('yargs')
  .alias('n', 'name').argv;

处理后的argv

argv :{
 _: [],
  cache: null,
  bail: null,
  profile: null,
  color: false,
  colors: false,
  liveReload: true,
  'live-reload': true,
  serveIndex: true,
  'serve-index': true,
  inline: true,
  info: true,
  name: 'test',
  'info-verbosity': 'info',
  infoVerbosity: 'info',
  'client-log-level': 'info',
  clientLogLevel: 'info',
  host: 'localhost',
  '$0':
   'node_modules\\webpack-dev-server\\bin\\webpack-dev-server.js' 
   }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值