1
或者至少,這就是我正在想的事情。我有以下功能:Ionic confirmPopup then()函數在用戶交互之前被調用
function checkExistingMember() {
var confirmPopup = $ionicPopup.confirm({
title: 'Existing Member?',
template: 'Are you an existing member?',
cancelText: 'No',
okText: 'Yes'
});
confirmPopup.then(function(res) {
if(res) {
// User is existing member
return true;
} else {
// User is NOT existing member
return false;
}
});
} // END checkExistingMember
我然後調用它,它在我的控制器的最頂端,像這樣:
var isExistingMember = checkExistingMember();
if (isExistingMember) {
console.log('Is existing member');
} else {
console.log('Is NOT existing member');
}
但隨後權當它被稱爲控制檯打印出Is NOT existing member
用戶面前有機會回答。任何人都知道這是爲什麼發生?
值得一提的是,如果我直接在我的控制器中調用var confirmPopup = $ionicPopup.confirm() { ...}
和confirmPopup.then(...)
,即如果我沒有將它抽象爲函數,那麼一切正常。
有一個空的,如果在那裏聲明..它應該是如果(isExistingMember){...?另外,在運行函數時出現錯誤:「TypeError:Can not read property'then'of undefined」 – Tiwaz89
是的,當然它應該是'if(isExistingMember)'。確保你從函數返回$ ionicPopup.confirm'。 – dfsq