如何将 Ajax (Jquery) 转换为 fetch async
How to convert Ajax (Jquery) into fetch async
我编写了这段代码,它非常适合我。
但是当我尝试将其转换为获取时,它不起作用,因为 return 一个承诺。
我不知道如何在获取时将其用作异步假。
'getProjectConstants': function(constArray)
{
var result='';
$.ajax({
type: "GET",
url: `${constProjectBaseUrl}/ajax/getProjectConstants/${constArray}`,
async: false,
dataType: "json",
success: function(data) {
result = data
}
});
return result
我试过这样做,但是不行
fetch(`${constProjectBaseUrl}/ajax/getProjectConstants/${constArray}`)
.then((response) => response.json())
.then((response) => {
// console.log(response)
return response
}) // end of .then((response) => {
.catch(error => {
console.log("[ajax.getProjectConstants] Error => " + error);
}); // end of .catch(error => {
你可以试试这个:
async function getProjectConstants(){
const json = await (await fetch(`${constProjectBaseUrl}/ajax/getProjectConstants/${constArray}`)).json();
return json;
}
ajax.getProjectConstants(['PROJECT_PASSWORD_MINIMUM', 'OWNER_NAME', 'DB_TBL_TIME_ZONE']).then((constant) => {
console.log(constant.OWNER_NAME)
}).catch(console.error);
我编写了这段代码,它非常适合我。 但是当我尝试将其转换为获取时,它不起作用,因为 return 一个承诺。 我不知道如何在获取时将其用作异步假。
'getProjectConstants': function(constArray)
{
var result='';
$.ajax({
type: "GET",
url: `${constProjectBaseUrl}/ajax/getProjectConstants/${constArray}`,
async: false,
dataType: "json",
success: function(data) {
result = data
}
});
return result
我试过这样做,但是不行
fetch(`${constProjectBaseUrl}/ajax/getProjectConstants/${constArray}`)
.then((response) => response.json())
.then((response) => {
// console.log(response)
return response
}) // end of .then((response) => {
.catch(error => {
console.log("[ajax.getProjectConstants] Error => " + error);
}); // end of .catch(error => {
你可以试试这个:
async function getProjectConstants(){
const json = await (await fetch(`${constProjectBaseUrl}/ajax/getProjectConstants/${constArray}`)).json();
return json;
}
ajax.getProjectConstants(['PROJECT_PASSWORD_MINIMUM', 'OWNER_NAME', 'DB_TBL_TIME_ZONE']).then((constant) => {
console.log(constant.OWNER_NAME)
}).catch(console.error);