防止 node.js 应用程序在进程完成后退出

Prevent node.js application from exiting once the process is done

我写了一个非常基本的 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();
}

但是,它会在不等待答案的情况下一次又一次地回答问题。这是控制台的样子: console output

我想让它做这些:

  1. 提出问题,等我输入答案。
  2. 处理问题(使用run()中的代码)
  3. 完成后,返回问题 1。

我该怎么做?

而不是做

for( ; ; ) {
    run();
}

run 函数中执行此操作

while (true) {
    const answers = await form();
    //other codes
    //~~
}