1
private isValidURL(url: string) {
var isValid = false;
this.$http.get(url).then(
(data) => {
console.log('success');
isValid = true;
}
).catch(
(reason) => {
console.log('failure ' + reason);
isValid = false;
}
).then(
() => {
return isValid;
}
)
}
private anotherFunc() {
if (!this.isValidURL(url)) {
alert('Wrong URL');
return false;
}
}
if語句中的警報在isValidURL
的函數調用之前執行。我如何確保函數先執行?函數調用獲取請求之前運行的Javascript警報
可能的重複[如何返回來自異步調用的響應?](http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-call ) – David
提示:'isValidURL' *本身*不包含'return'語句,因此其結果總是計算爲'undefined',即「falsey」。所以'!this.isValidURL()'將*總是*爲真。 – David