无法读取 axios 之外的函数
cannot read function outside axios
我有一个 isUserLogged() 函数,当在 axios 中满足特定条件时会调用它,但是它 returns 一个错误说 Uncaught (in promise) ReferenceError .有没有办法在外面调用函数?谢谢。
这是我的代码。
axios.post('/webservices/getaccountinfo.ashx?o=all')
.then(function (response) {
/*Selector*/
var pPanel = document.querySelector('.product-panel');
var panelHead = document.querySelector("#pLshow div:nth-child(2)");
var userLogged = false;
if(response.data.Email !== null){
console.log(response.data.Email);
userLogged = true;
isUserLogged(response.data.FirstName, response.data.LastName, response.data.Email);
}
}).catch(function (error) {
return Promise.reject(error);
});
function isUserlogged(fname, lname, email){
console.log('pass function outside');
}
注意:我没有使用reactJS。
你打错了。全局范围内的函数被定义为 isUserlogged,但是你调用的是 isUserLogged
如果您想执行自定义回调,我建议您使用包装函数。像
function isUserlogged(response){
var pPanel = document.querySelector('.product-panel');
var panelHead = document.querySelector("#pLshow div:nth-child(2)");
var userLogged = false;
if(response.data.Email !== null){
console.log(response.data.Email);
userLogged = true;
isUserLogged(response.data.FirstName, response.data.LastName, response.data.Email);
}
console.log('pass function outside');
}
function post(resource, url){
return axios.post(url, resource)
}
post(dataMock,'/webservices/getaccountinfo.ashx?o=all')
.then(isUserLogged))
.catch(function (error) {
//your catch logic
});
我有一个 isUserLogged() 函数,当在 axios 中满足特定条件时会调用它,但是它 returns 一个错误说 Uncaught (in promise) ReferenceError .有没有办法在外面调用函数?谢谢。
这是我的代码。
axios.post('/webservices/getaccountinfo.ashx?o=all')
.then(function (response) {
/*Selector*/
var pPanel = document.querySelector('.product-panel');
var panelHead = document.querySelector("#pLshow div:nth-child(2)");
var userLogged = false;
if(response.data.Email !== null){
console.log(response.data.Email);
userLogged = true;
isUserLogged(response.data.FirstName, response.data.LastName, response.data.Email);
}
}).catch(function (error) {
return Promise.reject(error);
});
function isUserlogged(fname, lname, email){
console.log('pass function outside');
}
注意:我没有使用reactJS。
你打错了。全局范围内的函数被定义为 isUserlogged,但是你调用的是 isUserLogged
如果您想执行自定义回调,我建议您使用包装函数。像
function isUserlogged(response){
var pPanel = document.querySelector('.product-panel');
var panelHead = document.querySelector("#pLshow div:nth-child(2)");
var userLogged = false;
if(response.data.Email !== null){
console.log(response.data.Email);
userLogged = true;
isUserLogged(response.data.FirstName, response.data.LastName, response.data.Email);
}
console.log('pass function outside');
}
function post(resource, url){
return axios.post(url, resource)
}
post(dataMock,'/webservices/getaccountinfo.ashx?o=all')
.then(isUserLogged))
.catch(function (error) {
//your catch logic
});