Javascript - 使用函数的响应
Javascript - Use response from function
我正在尝试开发一个全局函数以便从另一个文件更轻松地使用它。
在我工作的某一时刻,我有这个:
.then(function(response) {
if(response.data.code == 200)
{
Swal.fire({
title: 'Modifications enregistrées !',
icon: 'success',
}).then(function() {
console.log(response);
// a parameter function which will used here
afterFinish();
});
}
所以在第二个 then() 中,我可以访问 console.log 中的响应。
现在,我调用一个作为参数传递的函数。此函数还必须使用 "response" 属性。除非它不起作用。
示例:
我的afterFinish函数参数:
afterFinish: function(response){
console.log(response);
}
所以在我的主要功能中它应该给出类似的东西:
then(function() {
console.log(response);
// a parameter function which will used here
//afterFinish function;
console.log(response);
});
第一个console.log () 将向我发送正确的响应对象。第二个将 return 一个空的 Response 对象给我。
另一方面,如果我将我的afterFinish()函数的内容直接放在代码中而不是调用它,那么我一定可以访问它。
有人知道该怎么做吗?
将 response
传递给 afterFinish
:
afterFinish(response)
接受它作为 afterFinish
中的参数(我 认为 你已经是这部分了):
afterFinish: function(response) {
// ...
}
使用 setTimeout
实现异步的实时示例:
function fakeAjax() {
return new Promise(resolve => {
setTimeout(() => {
resolve(Math.random());
}, 800);
});
}
function myFunction(options) {
const {afterFinish} = options;
fakeAjax()
.then(response => {
afterFinish(response);
})
.catch(error => {
// ...handle/report eror...
});
}
console.log("Running...");
myFunction({
afterFinish: function(response) {
console.log(`Response is ${response}`);
}
});
我正在尝试开发一个全局函数以便从另一个文件更轻松地使用它。
在我工作的某一时刻,我有这个:
.then(function(response) {
if(response.data.code == 200)
{
Swal.fire({
title: 'Modifications enregistrées !',
icon: 'success',
}).then(function() {
console.log(response);
// a parameter function which will used here
afterFinish();
});
}
所以在第二个 then() 中,我可以访问 console.log 中的响应。
现在,我调用一个作为参数传递的函数。此函数还必须使用 "response" 属性。除非它不起作用。
示例:
我的afterFinish函数参数:
afterFinish: function(response){
console.log(response);
}
所以在我的主要功能中它应该给出类似的东西:
then(function() {
console.log(response);
// a parameter function which will used here
//afterFinish function;
console.log(response);
});
第一个console.log () 将向我发送正确的响应对象。第二个将 return 一个空的 Response 对象给我。
另一方面,如果我将我的afterFinish()函数的内容直接放在代码中而不是调用它,那么我一定可以访问它。
有人知道该怎么做吗?
将 response
传递给 afterFinish
:
afterFinish(response)
接受它作为 afterFinish
中的参数(我 认为 你已经是这部分了):
afterFinish: function(response) {
// ...
}
使用 setTimeout
实现异步的实时示例:
function fakeAjax() {
return new Promise(resolve => {
setTimeout(() => {
resolve(Math.random());
}, 800);
});
}
function myFunction(options) {
const {afterFinish} = options;
fakeAjax()
.then(response => {
afterFinish(response);
})
.catch(error => {
// ...handle/report eror...
});
}
console.log("Running...");
myFunction({
afterFinish: function(response) {
console.log(`Response is ${response}`);
}
});