问题标签 [yargs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - 记录旗帜的 Yargs
我试图弄清楚如何记录和别名一个不带值的参数yargs
我想要做的是别名-c
并--compile
能够记录--compile
. 如果--compile
script sources -c
我期待它是这样的
但是调用script sources -c
会报错
javascript - 根据参数不同来源的 Gulp 任务
我想用 gulp 完成一些简单的事情。我想编写一个通用方法将文件从特定源目录移动到输出目录。
假装我们有这样的东西
除了输出目录之外,这两个任务:transform-move-jsx-Production 和 transform-move-jsx-Development 是相同的。我想让它更干燥(不要重复自己)。我应该能够制作一个可以使用 yarg 参数或其他东西的方法吗?在下一个示例中,我假装可以将路径作为 arg 传递
所以我尝试使用 yargs 进行类似的操作
但是,这现在需要我在命令行中为 gulp 调用添加参数
当我们从 dev gulp 任务内部调用越来越多的 gulp 任务时,这显然不太可维护。无论如何都会很混乱,因为我们不需要知道运行时的输出目录结构之类的实现细节gulp dev
我可以做这样的事情:
这似乎更好,因为它更灵活,但是现在我的 gulpfile 充满了几个不必要的功能。
有没有更好的办法 ?
node.js - 在 *one* gulp 任务中使用 yargs 将其应用在 *all* 任务中:为什么?怎么修?
我有一个 UI 项目,具有基于generator-gulp-angular的自动化工作流程。我添加了gulp-ng-config
,以便根据环境变量执行不同的构建。我使用包 'yargs' 来提取环境标志,并使其可用于该任务。但是即使任务应该被封装,我使用 yargs 来创建它的需求现在在我的整个项目中的所有 gulp 任务中都是活跃的。
这是 gulp 任务ngconfig
:
它作为 的一部分被调用build
,这里:
当我们想使用我们的环境变量执行构建时,我们执行
而且,一切正常!但它蔓延到我的其他任务中。例如,当我启动本地 API 模拟服务器时,使用:
它抱怨我没有包含必要的参数:
但我的意图是那些必要的参数仅在ngconfig
任务中需要。(ngconfig
绝对不是 . 的依赖项stubby
。)那么,为什么会溢出到其他任务中,我该如何解决呢?
arrays - 如何在 gulp 中使用 yargs 数组语法?
将 yargs 的数组语法与 gulp 一起使用会引发错误。这是我的代码:
并像这样使用它:
如何在 gulp 中使用 yargs 设置数组?
javascript - 将参数传递给打包的电子应用程序
我们正在使用electron-packager来捆绑和分发我们 Web 应用程序的前端。我们需要能够将服务器的host
和传递port
到电子前端进行连接。当我们通过electron main.js --host blah --port 8080
它启动时。一旦它被打包,我们运行通过./MyApp --host blah --port 8080
,它不起作用。这很糟糕,因为我们不希望客户需要自己安装 electron/npm。另外值得注意的是,无论我们是否将应用程序打包到asar
存档中,都会发生这种情况。
关于我们可以尝试的事情的任何想法,或者我们是否试图以错误的方式解决这个问题?
javascript - 如何在 yargs 中指定默认子命令?
我yargs
用来创建一个带有“build”、“link”、“clean”等子命令的构建工具。
我希望能够./build.js
不带参数输入并默认调用“build”子命令处理程序。
我能够做到这一点:
但这对我来说似乎有点 hacky,如果我想在“build”子命令中添加任何额外的位置参数,它可能会导致问题。
有没有办法在 yargs 的语义中实现这一点?上的文档.command()
可能更清楚。
node.js - yargs .check() 错误处理
我正在使用yargs来验证数据加载帮助程序库的 cli 参数。
我希望能够在允许脚本运行之前检查文件是否存在,我使用fs.accessSync(filename, fs.R_OK);
. 但是,如果该文件不存在,则消息仅将 .check() 函数显示为错误,而我想拦截并声明该文件不存在(具有读取权限)。
那么如何在错误返回时发送由 .check() 呈现的错误?
这是我的 yargs 的要点:
如果不是可读文件,则返回错误:
我希望能够指定以下内容:
Argument check failed: filepath is not a readable file
yargs - yargs .command 错误:选项的第二个参数必须是对象
假设我有一个文件“test.js”:
然后我运行:
我收到了这个错误:
option 的第二个参数必须是一个对象
如果我删除 .command 的第三个参数:
一切都很好。
我必须犯一个愚蠢的错误。但我就是想不通。
谢谢
angularjs - gradle 不通过扩展使用选项将 args 传递给 gulp
使用以下Gradle gulp 插件,它通过简单的命名约定简单地执行gulp task
from agradle task
gulp_<task name>
在文档的扩展选项中:Gradle gulp plugin extended docs它演示了以下内容:
在我的 gradle 执行的标准构建任务中,如下所示:
以下是执行和构建的,但是 args 被忽略,gulp 永远不会选择它们。args 应该由Yargs 命令行解析器处理
如果我直接使用 gulp 运行(如下所示),那么这工作正常,那么为什么从 gradle 运行时我的 args 会被忽略?
注意- 如果您想知道工具的选择,应用程序布局是 Springboot / AngularJS (^1.5)。