EN
← 错误索引

F_SYSTEM_NO_MATCHING_HANDLER

没有匹配的处理器

命令存在处理器,但当前调用没有匹配任何 path 或 flag,也不存在默认处理器。

更新于

复现

不带 --help 调用这个主命令时,没有可执行的方法:

src/root.command.ts
import { CommandMajor, Handler, Module, createApp } from 'func'

@CommandMajor()
class RootCommand {
  @Handler({ flag: 'help' })
  help() {}
}

@Module({ commands: [RootCommand] })
class AppModule {}

await createApp(AppModule).bootstrap({ argv: [] })

如何修复

添加一个默认处理器,或确保每种合法调用都能选择已声明的 flag 或 path:

src/root.command.ts
class RootCommand {
  @Handler({ flag: 'help' })
  help() {}

  @Handler()
  run() {}
}

@Module({ commands: [RootCommand] })
class AppModule {}

await createApp(AppModule).bootstrap({ argv: [] })