gpt4 book ai didi

javascript - 完成异步功能(webkitgetasentry、文件上传)后如何捕获?

转载 作者:行者123 更新时间:2023-12-03 04:04:24 27 4
gpt4 key购买 nike

我使用函数 webkitgetasentry 上传文件(包括文件夹)(拖放使用)

下面是我的代码

function drop(e){
e.stopPropagation();
e.preventDefault();
//call start modal (waiting file uploading...)
var items = e.dataTransfer.items;
for(var i=0; i<items.length; i++){
var item = items[i].webkitGetAsEntry();
if (item){
callmyfunction(item);
}
}
//start modal close
}

调用myfunction进行文件上传。

但是此代码异步运行。

因此在 callmyfunction 全部完成之前启动模态关闭

当 callmyfunction 全部完成时,如何启动模式关闭?

最佳答案

callmyfunction 异步函数应该接受回调参数,以便您可以在那里处理模式关闭。示例:

function callmyfunction(item, cb) {
// do uploading...
// execute cb after upload
cb();
}

function drop(e){
e.stopPropagation();
e.preventDefault();
//call start modal (waiting file uploading...)
var items = e.dataTransfer.items;
for(var i=0; i<items.length; i++){
var item = items[i].webkitGetAsEntry();
if (item){
callmyfunction(item, function() {
// close modal
});
}
}
}

另一个选择是使用 Promise .

关于javascript - 完成异步功能(webkitgetasentry、文件上传)后如何捕获?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44626188/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com