首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Inquirer.prompt退出,但没有答案

Inquirer.prompt退出,但没有答案
EN

Stack Overflow用户
提问于 2020-07-12 19:02:22
回答 1查看 1K关注 0票数 0

我想知道是否有人可以帮助我解释一下为什么下面的代码会导致命令行退出而不等待用户的回答。

代码语言:javascript
复制
init();
function init() {
  loadPrompts();
}
async function loadPrompts() {
  const { choice } = await inquirer.prompt([
    {
      type: "list",
      name: "choice",
      message: "What would you like to do?",
      choices: [
        {
          name: "View All Employees",
          value: "VIEW_EMPLOYEES",
        },
        {
          name: "View All Employees By Department",
          value: "VIEW_EMPLOYEES_BY_DEPARTMENT",
        },
        {
          name: "View All Employees By Manager",
          value: "VIEW_EMPLOYEES_BY_MANAGER",
        },
        {
          name: "Add Employee",
          value: "ADD_EMPLOYEE",
        },
        {
          name: "Remove Employee",
          value: "REMOVE_EMPLOYEE",
        },
        {
          name: "Update Employee Role",
          value: "UPDATE_EMPLOYEE_ROLE",
        },
        {
          name: "Update Employee Manager",
          value: "UPDATE_EMPLOYEE_MANAGER",
        },
        {
          name: "View All Roles",
          value: "VIEW_ROLES",
        },
        {
          name: "Add Role",
          value: "ADD_ROLE",
        },
        {
          name: "Remove Role",
          value: "REMOVE_ROLE",
        },
        {
          name: "View All Departments",
          value: "VIEW_DEPARTMENTS",
        },
        {
          name: "Add Department",
          value: "ADD_DEPARTMENT",
        },
        {
          name: "Remove Department",
          value: "REMOVE_DEPARTMENT",
        },
        {
          name: "Quit",
          value: "QUIT",
        },
      ],
    },
  ]);
  switch (choice) {
    case "VIEW_EMPLOYEES":
      return viewEmployees();
    default:
      return quit();
  }
}
async function viewEmployees() {
  const employees = await db.findAllEmployees();
  console.table(employees);
  loadPrompts();
}

目标是一个简单的命令行应用程序,它要求用户选择一个选项-然后根据他们选择的选项执行一个函数。但实际情况是,应用程序正在运行,显示选项,然后立即退出...

EN

回答 1

Stack Overflow用户

发布于 2020-07-12 19:07:17

应该使用awaitloadPrompts()同步工作;

代码语言:javascript
复制
(async function init(){
  await loadPrompts();
})();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62860243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档