NodeJS 命令行參數(shù)的配置

2018-08-08 16:54 更新

yargs 模塊還提供3個(gè)方法,用來(lái)配置命令行參數(shù)。

  • demand:是否必選
  • default:默認(rèn)值
  • describe:提示
#!/usr/bin/env node
var argv = require('yargs')
  .demand(['n'])
  .default({n: 'tom'})
  .describe({n: 'your name'})
  .argv;

console.log('hello ', argv.n);

上面代碼指定 n 參數(shù)不可省略,默認(rèn)值為 tom,并給出一行提示。

options 方法允許將所有這些配置寫進(jìn)一個(gè)對(duì)象。

#!/usr/bin/env node
var argv = require('yargs')
  .option('n', {
    alias : 'name',
    demand: true,
    default: 'tom',
    describe: 'your name',
    type: 'string'
  })
  .argv;

console.log('hello ', argv.n);

有時(shí),某些參數(shù)不需要值,只起到一個(gè)開關(guān)作用,這時(shí)可以用 boolean 方法指定這些參數(shù)返回布爾值。

#!/usr/bin/env node
var argv = require('yargs')
  .boolean(['n'])
  .argv;

console.log('hello ', argv.n);

上面代碼中,參數(shù) n 總是返回一個(gè)布爾值,用法如下。

$ hello
hello  false
$ hello -n
hello  true
$ hello -n tom
hello  true

boolean 方法也可以作為屬性,寫入 option 對(duì)象。

#!/usr/bin/env node
var argv = require('yargs')
  .option('n', {
    boolean: true
  })
  .argv;

console.log('hello ', argv.n);
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)