从自定义异步函数返回值



我需要从谷歌地理编码 API 返回 lat-lng 坐标,并用它做一些事情。所以,我的代码看起来像这样:

async function getJson(url){
try {
const response = await fetch(url);
return await response.json();
}
catch (err) {
console.error(err.message);
}
}
function getLocationForName(address){
getJson(geoCodeUrl+address+apiKey).then(function(location){
return location.results[0].geometry.location;
});
}
someFunc(){
f['location'] = getLocationForName(city+f['street']+'+'+f['house']);
}

f['location']阿尔维斯的价值没有定义

你需要使用一个回调函数:

function getLocationForName(address, callback){
getJson(geoCodeUrl+address+apiKey).then(function(location){
if (callback) callback(location.results[0].geometry.location); 
});
}
someFunc(){
getLocationForName(city+f['street']+'+'+f['house'], function(location){
f['location'] = location;
});
}

相关内容

  • 没有找到相关文章

最新更新