在循环内使用查询器 js 不等待用户输入

Using inquirer js inside a loop is not waiting for user input

我有一系列更改要应用到数据库,对于每个更改我都需要用户确认。因此,我使用 inquirer js 询问用户是否要应用这些更改。

我在循环外试过并且可以工作,但如果我在循环内做它就不行。它显示了问题,但循环继续不让用户回答是或否。我正在查看 SO 和互联网,但我找不到任何这样的示例或代码,amb 尝试什么是可能的?

这是我的代码:

changes.map(change => {
                      inquirer.prompt([{
                        name: "operate",
                        type: "confirm",
                        message: `Updatade database with ${change.description}?`,
                    }, ])
                    .then((operate) => {
                        if (operate.replace) {
                            green(
                                `Database has been updated`
                            );
                        } else {
                            red(
                                `Database hs not been updated`
                            );
                        }
                    });}

也尝试过 async/await,但我遇到了同样的问题。

我发现了问题。在循环中,我创建了所有具有相同名称的提示,因此没有结果。更改后现在可以完美运行了。