javascript - 进程完成后阻止 node.js 应用程序退出
问题描述
我写了一个非常基本的 nodejs 应用程序,如下所示:
#!/usr/bin/env node
const inquirer = require("inquirer");
const chalk = require("chalk");
const figlet = require("figlet");
const shell = require("shelljs");
const fs = require('fs');
//Defining some functions
//~~
//The main part of the code
const run = async function() {
const answers = await form();
//other codes
//~~
}
run();
代码的主要目的是使用inquirer
模块在控制台中提出一些问题,然后在run()
部分中处理答案。它在这方面做得很好。它成功地提出了问题,并对答案做了它应该做的事情。
但是,一旦处理了答案,该过程将退出。我想要的是,一旦处理了答案,我希望它再次回答相同的问题,并不断重复,直到我手动终止该过程。
我试过这个:
for( ; ; ) {
run();
}
但是,它会一次又一次地回答问题,而无需等待答案。这是控制台的样子: 控制台输出
我希望它做这些:
- 提出问题并等到我输入答案。
- 处理问题(使用 中的代码
run()
) - 完成后,回到问题 1。
我怎样才能做到这一点?
解决方案
而不是做
for( ; ; ) {
run();
}
run
在函数内部执行此操作
while (true) {
const answers = await form();
//other codes
//~~
}
推荐阅读
- asp.net - 使用 ASP.net API,我可以在 API GET 请求中排除某些字段吗?
- c# - 将名称添加到列表
- singly-linked-list - 创建一个整数链接列表,它将列表拆分为两个不同的奇数和偶数列表并显示结果
- python - 如何从 JSON 制作表格?ValueError:将字典与非系列混合可能会导致排序不明确
- usb - 在 Linux 和 Android 设备之间使用 libusb 传输文件
- c# - Web.confg 问题多用户访问
- typescript - 异步下载静态图片,NextJS + TypeScript
- .net - NewRelic 中的内存使用情况
- php - 如何计算以下函数
- jquery - 在调整浏览器窗口大小之前,背景图像不会显示在动画 div 上