问题标签 [inquirer]
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.
javascript - 以编程方式关闭 Vorpal 实例
这涉及 node.js 的 vorpal CLI,如下所示:
用户可以使用Ctrl-关闭 vorpal C,但是如何以编程方式关闭 vorpal?
例如,如果打开了 vorpal 终端会话,但 25 秒后没有收到进一步的标准输入,我想以编程方式关闭 vorpal,我的代码如下所示:
node.js - Node.js Vorpal CLI - 将子命令作为一个命令包含在内
假设我们有这个:
如何为 sumanOptions 传递命令字符串(“子命令”)?像这样的东西:
vorpal> find "a b c" myfolder
这样在动作回调的 args 中,看起来像:
这可能吗?还是这个问题是我在问题跟踪器中看到的“子命令”问题?我希望能够做到这一点,到目前为止,还无法弄清楚如何做到这一点。
javascript - 有没有办法在呈现提示时在查询器中使用以前的答案(inquirer v6)?
所以我想要做的是在进一步提出问题时使用先前的答案。基本上这样我就可以显示将要创建的内容的摘要并要求验证。
有没有简单的方法来实现这一点?或者另一种实现列出所有先前答案的摘要类型的方法?
npm - 使用 Inquirer 时,“List”和“Rawlist”有什么区别
我正在使用查询器,我可以制作“列表”类型或“原始列表”类型。
我的目标是允许用户从 sql 数据库中的一系列产品中选择一个项目,但我现在很好奇这两种列表类型之间的区别是什么?在文档中,定义是:
列表 - {type: 'list'} 采用类型、名称、消息、选择 [、默认、过滤器] 属性。(注意默认必须是数组中的选择索引或选择值)
和
原始列表 - {type: 'rawlist'} 获取类型、名称、消息、选择 [、默认、过滤器] 属性。(注意默认必须是数组中的选择索引)
但我不明白他们的意思,或者他们的区别。
node.js - 从节点 shebang 调用时保持查询器进程处于活动状态
我有这样的功能:
我从 shebang 节点脚本调用它。
该过程正在显示询问者提示,然后死亡。
我怎样才能让它活着让用户输入输入?
node.js - 来自一个非常简单的查询程序的“.then 不是函数”
下面的非常简单的示例(几乎从 npm 查询器首页复制而来)给出了“.then 不是函数”错误。但是我无法弄清楚问题是什么。
错误消息如下所示:
但是以下示例可以正常工作。所以基本的node.js环境(nodejs --version = v9.11.2)就OK了。
node.js - 如何终止 npm 查询器提示并将控制权返回到主菜单/功能
我一直遇到查询器 npm 包的问题,无法在任何地方找到解决方案。我试图允许用户随时退出函数中的查询器提示并返回主菜单。但是,这似乎导致查询器提示的多个实例保持活动状态,从而导致此错误:
(节点:9756) MaxListenersExceededWarning:检测到可能的 EventEmitter 内存泄漏。添加了 11 个退出侦听器。使用emitter.setMaxListeners() 增加限制
并且还导致特定功能中的询问者提示开始多次显示相同的提示。在尝试多次使用该功能后,我附上了该行为的图像。 提示错误
我尝试增加阻止内存泄漏错误的事件侦听器的最大数量,但查询器提示错误不受影响。
我认为原因是通过从查询器验证函数中返回和调用 main,查询器不会调用其内置函数,因此每次执行此操作时,查询器创建的事件侦听器都不会被删除。
非常感谢任何有关如何解决此问题的帮助,谢谢。
node.js - Inquirer.js:如果一个提示为真,则询问多个问题
我正在使用 Inquirer.js 编写帐户创建者,并且仅在用户要求此类保护时才想询问用户的电子邮件和密码。它是这样的:
如您所见,我运行了完全相同的when语句三次,因为它验证是否选择了密码保护。我想知道是否有更智能、更实用的方法来执行此操作,即在不重复when函数的情况下运行此验证。
也许嵌套三个问题就可以了,但是如何在不破坏提示流程的情况下这样做呢?
node.js - 如何使用查询器设置答案的默认值?
我正在尝试创建一个小型构建脚本,如果在默认路径中找不到它们,它将向用户询问 mysql 标头的位置。现在我inquirer
用来提示用户输入效果很好,但我遇到了以下问题:
如果找到 mysql 标头的默认路径,则不会显示问题,因此不会设置答案。如何在不实际向用户显示的情况下为问题设置默认值?
解决上述问题也可以做到这一点,而不是使用全局变量: