0

我的 yargs 配置有问题:

const argv = require('yargs')
    .boolean('reset', {
        alias: 'rs'
    })
    .boolean('refreshConfig', {
        alias: 'rc'
    })
    .option('harvest', {
        alias: 'h'
    })
    .option('lang', {
        alias: 'l',
        default: 'fr'
    })
    .help().argv;

我执行的脚本如下:

$ node ./srcjobs/cli.js --refreshConfig --harvest=facebook

我收到了这个错误:

Too many arguments provided. Expected max 1 but received 2.

你知道为什么吗 ?谢谢您的帮助。

4

1 回答 1

1

.boolean仅接收 1 个参数,来自源代码

boolean<K extends string>(key: K | ReadonlyArray<K>): Argv<T & { [key in K]: boolean | undefined }>;

合适的方式

const argv = require('yargs')
  .boolean('reset')
  .alias('rs', 'reset')
  .boolean('refreshConfig')
  .alias('rc', 'refreshConfig')
  .option('harvest', {
    alias: 'h'
  })
  .option('lang', {
    alias: 'l',
    default: 'fr'
  })
  .help().argv;
于 2019-04-16T14:55:38.050 回答