yargs 是一个现代的、以海盗为主题的替代产品,取代了 optimist。
Yargs Yargs 是一个 Node.js 库,可帮助那些试图解析选项字符串的开发者 [![NPM 版本][npm-image]][npm-url] [![js-standard-style][standard-image]][standard-url] [![覆盖率][coverage-image]][coverage-url] [![常规提交][conventional-commits-image]][conventional-commits-url] 描述 Yargs 可以帮助您构建交互式命令行工具,通过解析参数并生成精美的用户界面。它为您提供了: 命令和(分组)选项(例如 my-program.js serve --port=5000)。基于参数的动态生成的帮助菜单: mocha [spec..] 使用 Mocha 运行测试命令 mocha inspect [spec..] 使用 Mocha 运行测试 [默认] mocha init 创建客户端端 Mocha 设置 在规则和行为中 --allow-uncaught 允许未捕获的错误传播 [boolean] --async-only,-A 要求所有测试使用回调(异步)或返回一个 Promise [boolean] 为您的命令生成 Bash 和 Zsh 的完成脚本,以及更多内容。 安装 稳定版本: bash npm i yargs 具有最新功能的最新版本: bash npm i yargs@next 使用 简单示例 JavaScript #!/usr/bin/env node import yargs from 'yargs'; import { hideBin } from 'yargs/helpers'; const argv = yargs(hideBin(process.argv)).parse() if (argv.ships 3 && argv.distance 注意: hideBin 是 process.argv.slice(2) 的一种简写。它的优点是考虑到了某些环境(例如 Electron)中的变化。 复杂示例 JavaScript #!/usr/bin/env node import yargs from 'yargs'; import { hideBin } from 'yargs/helpers'; yargs(hideBin(process.argv)) .command('serve [port]', 'start the server', (yargs) = { return yargs .positional('port', { describe: 'port to bind on', default: 5000 }) }, (argv) = { if (argv.verbose) console.info(start server on :${argv.port}) serve(argv.port) }) .option('verbose', { alias: 'v', type: 'boolean', description: 'Run with verbose logging' }) .parse() 使用 --help 运行上面的示例,查看应用程序的帮助信息。 支持的平台 TypeScript yargs 具有类型定义,可在 [@types/yargs][type-definitions] 中找到。 npm i @types/yargs --save-dev 请参阅文档中的使用示例。 Deno 从 v16 起, yargs 支持 Deno: TypeScript import yargs from 'htt…
暂无开放 Issues,或尚未同步最近议题。