小编Wil*_*ing的帖子

如何使用 rxjs 在执行期间动态向 Inquirer JS 添加问题?

我想向用户提问,但又不想立即列出所有问题。

该文档提到了 rxjs,但我觉得文档中关于如何在执行提示时正确添加问题的问题存在差距,或者至少它对我来说不太有效。

https://www.npmjs.com/package/inquirer#reactive-interface

在内部,Inquirer 使用 JS 反应式扩展来处理事件和异步流。

这意味着您可以利用此功能来提供更高级的流程。例如,您可以动态添加要询问的问题:

var prompts = new Rx.Subject();
inquirer.prompt(prompts);

// At some point in the future, push new questions
prompts.next({
  /* question... */
});
prompts.next({
  /* question... */
});

// When you're done
prompts.complete();
Run Code Online (Sandbox Code Playgroud)

使用返回值处理属性,您可以访问更细粒度的回调:

inquirer.prompt(prompts).ui.process.subscribe(onEachAnswer, onError, onComplete);
Run Code Online (Sandbox Code Playgroud)

javascript rxjs inquirer inquirerjs

7
推荐指数
1
解决办法
2959
查看次数

标签 统计

inquirer ×1

inquirerjs ×1

javascript ×1

rxjs ×1