yargs 模块还提供3个方法,用来配置命令行参数。
> * demand:是否必选
> * default:默认值
> * 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 参数不可省略,默认值为 tom,并给出一行提示。
options 方法允许将所有这些配置写进一个对象。
~~~
#!/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);
~~~
有时,某些参数不需要值,只起到一个开关作用,这时可以用 boolean 方法指定这些参数返回布尔值。
~~~
#!/usr/bin/env node
var argv = require('yargs')
.boolean(['n'])
.argv;
console.log('hello ', argv.n);
~~~
上面代码中,参数 n 总是返回一个布尔值,用法如下。
~~~
$ hello
hello false
$ hello -n
hello true
$ hello -n tom
hello true
~~~
boolean 方法也可以作为属性,写入 option 对象。
~~~
#!/usr/bin/env node
var argv = require('yargs')
.option('n', {
boolean: true
})
.argv;
console.log('hello ', argv.n);
~~~