小编Aux*_*aco的帖子

如何在循环中返回许多Promise并等待它们全部做其他事情

我有一个循环调用一个异步执行的方法.这个循环可以多次调用该方法.在这个循环之后,我有另一个循环,只有在完成所有异步操作后才需要执行.所以这说明了我的愿望:

for (i = 0; i < 5; i++) {
    doSomeAsyncStuff();    
}

for (i = 0; i < 5; i++) {
    doSomeStuffOnlyWhenTheAsyncStuffIsFinish();    
}
Run Code Online (Sandbox Code Playgroud)

我对承诺并不熟悉,所以有人能帮助我实现这一目标吗?

这是我的doSomeAsyncStuff()表现:

function doSomeAsyncStuff() {
    var editor = generateCKEditor();
    editor.on('instanceReady', function(evt) {
        doSomeStuff();
        // There should be the resolve() of the promises I think.
    })
}
Run Code Online (Sandbox Code Playgroud)

也许我必须做那样的事情:

function doSomeAsyncStuff() {
    var editor = generateCKEditor();
    return new Promise(function(resolve,refuse) {
        editor.on('instanceReady', function(evt) {
            doSomeStuff();
            resolve(true);
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

但我不确定语法.

javascript promise ecmascript-6 es6-promise

49
推荐指数
2
解决办法
4万
查看次数

如何向 SweetAlert2 弹出窗口添加多个输入?

我的网站上有代码,使用 SweetAlert2 弹出窗口让用户请求歌曲:

$('#request-song').click(async function() {
  const { value: song } = await swal({
    title: "Request a Song (please note song request won't be played unless we are live)",
    input: 'text',
    inputPlaceholder: 'Enter Artist - Song Name',
  });

  if (song) {
    $.post("functions/request.php", {request: song}, function(data) {
      console.log(data);
    });
    swal({type: 'success', title: 'Success!'});
  }
});
Run Code Online (Sandbox Code Playgroud)

但是当我添加另一个输入时,它只会读取第二个输入。如何添加另一个输入,以便听众可以在喊话中包含他们的姓名/用户名?

javascript sweetalert2

0
推荐指数
1
解决办法
1万
查看次数