gpt4 book ai didi

Javascript - 将回调值传递给调用变量

转载 作者:行者123 更新时间:2023-12-03 08:23:14 26 4
gpt4 key购买 nike

我有一个函数和一个变量......

var imageURLs = retrieveRemoteImages(vinUrls)

if imageURLs !== undefined) {
// do something
}

function retrieveRemoteImages(urls) {
var imageURls = [];
processSpinnerActivity(START_IMAGES_IMPORT);
importImagesforSlideShow(REMOTE_IMAGES_URL, urls, function (images) {
if (images !== undefined) {
imageURls = images;
return imageURls;
}
})
return imageURls;
}

这正如预期的那样......

function importImagesforSlideShow(imagePath, urls, call_back) {
var functionName = 'importImagesforSlideShow'
$.ajax({
type: "POST",
url: LOCAL_PROCESSING_MODULE,
data: {data: [imagePath, urls, IMAGE_EXTENSION_QUALIFIER], functionid: functionName},
dataType:"json",
success: function (res) {
processSpinnerActivity(IMPORT_IMAGES_SUCCESS);
call_back(res);
},
error: function (err) {
processSpinnerActivity(IMPORT_IMAGES_ERROR);
console.log(err.message);
}
});
}

回调工作正常,但我无法将最终值传递给 imageURL,而我需要这样做,因为只有在它具有值后才能进行下一步。

有什么想法吗?

谢谢!

这不是重复的问题,我的 AJAX 返回异步值没有任何问题*

最佳答案

这是不可能的,你正在执行一段异步代码。因此,当它们还没有任何数据时,您的代码将继续运行。您必须在回调中处理数据,例如如下所示:

function retrieveRemoteImages(urls, callback) {
processSpinnerActivity(START_IMAGES_IMPORT);
importImagesforSlideShow(REMOTE_IMAGES_URL, urls, callback);
}

retrieveRemoteImages(vinUrls, function(imageURLS) {
//do your stuff
});

关于Javascript - 将回调值传递给调用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33654521/

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