javascript异步等待转换为承诺
我有以下在Chrome中运行良好的代码:javascript异步等待转换为承诺,javascript,asynchronous,promise,async-await,Javascript,Asynchronous,Promise,Async Await,我有以下在Chrome中运行良好的代码: async function request(config) { if (config.url.indexOf('templates/') > -1) { await $.getJSON('../../../../version.json', function (data) { config.url += '?v=' + data.version;
async function request(config) {
if (config.url.indexOf('templates/') > -1) {
await $.getJSON('../../../../version.json', function (data) {
config.url += '?v=' + data.version;
});
}
var deferred = $q.defer();
deferred.resolve(config);
return deferred.promise;
}
由于Internet Explorer不支持async/await,我如何将代码转换为使用承诺而不是async/await,以便它在Internet Explorer中运行?如下更改getJSON中的代码
function request(config) {
if (config.url.indexOf('templates/') > -1) {
return $.getJSON('../../../../version.json')
.then(function(data) {
config.url += '?v=' + data.version;
return config;
});
}
var deferred = $q.defer();
deferred.resolve(config);
return deferred.promise;
}