gpt4 book ai didi

JavaScript : promise issue

转载 作者:行者123 更新时间:2023-12-01 02:39:58 32 4
gpt4 key购买 nike

这是我的代码。

function m1() {
return new Promise(function(resolve, reject) {
var files = $('#aws-upload-files')[0].files;
if (files.length > 0) {
for (var i = 0; i < files.length; i++) {
loadFile(files[i], $('#filecategory' + i + ' option:selected').text());
}
}
})
}

function submitFileUpload() {
$('#aws-upload-submit').click(function() {
m1().then(function(result) {
console.log('~~~ success here ');
window.location = 'https://example.com/';
})
.catch(function(error) {
console.log('Error');
})
})
}

$(function() {
submitFileUpload();
})

单击按钮“#aws-upload-submit”时,将调用函数 m1()

函数m1()返回一个promise。

.then() 中,我检查 Promise 是否返回成功,如果成功,我将浏览器重定向到 https://example.com

在我的例子中,当单击按钮时,m1() 被调用并且该函数成功运行,但没有创建任何 Promise 或 .then() 没有创建完全在工作。

即使 m1() 按预期工作,我也没有看到任何 console.log 指出 “~~~ 这里成功”。

谁能告诉我我的 promise 有什么问题吗?

最佳答案

您需要解决 promise 或拒绝它,因此您必须执行这样的代码

enter image description here

阅读:Promise

return new Promise(function(resolve, reject) {
//code
resolve();
}
<小时/>
function m1() {
return new Promise(function(resolve, reject) {
var files = $('#aws-upload-files')[0].files;
if (files.length > 0) {
for (var i = 0; i < files.length; i++) {
loadFile(files[i], $('#filecategory' + i + ' option:selected').text());
}
resolve();
} else {
reject();
}
})
}


m1().then(
  () => console.log("Task Complete!"),
  () => console.log("Task Errored!"),
);

关于JavaScript : promise issue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50147690/

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