NodeJS 选项未传递给NestJS命令

rxztt3cl  于 12个月前  发布在  Node.js
关注(0)|答案(1)|浏览(159)

nestjs-commander docs之后,我有这个命令:

import { Command, CommandRunner, Option } from 'nest-commander';

@Command({
  name: 'my-command',
})
export class MyCommand extends CommandRunner {
  async run(inputs: string[], options: Record<string, any>): Promise<void> {
    console.log(options); // This is an empty object
  }

  @Option({
    flags: '-l, --limit <limit>',
    description: 'Limit option',
  })
  parseLimit(val: string) {
    return Number(val);
  }
}

字符串
这是我的main-browser.ts文件:

import { AppModule } from "./app.module";
import { CommandFactory } from "nest-commander";

async function bootstrap() {
  await CommandFactory.run(AppModule, ["log"]);
}

bootstrap();


我已经将"console:dev": "ts-node -r tsconfig-paths/register src/main-cli.ts"添加到我的package.json中,但是当我使用npm run console:dev my-command --limit=10运行命令时,命令正常运行,但是我没有在run方法中获得limit值。
知道为什么选项没有传递给命令吗?

cwdobuhd

cwdobuhd1#

我也遇到了同样的问题,但这是一个关于npm如何工作的问题。
试试这个:

npm run console:dev my-command -- --limit=10

字符串
参考

相关问题