我的應用程序接收到一個帶有兩個布爾值的JSON對象。使用JSON數據在控制器中分配範圍變量,而不是查看
$http.post('url-here', {"token": token })
.success(function(data) {$scope.tokenValidate = data;});
這是JSON對象我收到:
{valid: true, expired: false}
我可以使用下面的我的視圖中訪問此數據:
我使用下面的訪問在我的控制器JSON數據{{ tokenValidate.valid }} or {{ tokenValidate.expired }}
相反,因爲這樣我創建我的看法,我想用這些布爾值從控制器內指定字符串變量的範圍,像這樣:
if ($scope.tokenValidate.valid) {
$scope.header = "Choose a new password";
} else if ($scope.tokenValidate.expired) {
$scope.header = "This link has expired.";
$scope.mesage = "Enter your email address to receive a new link."
} else {
$scope.header = "This link is invalid."
}
當我這樣做時,控制器無法正確讀取JSON數據。
TypeError: Cannot read property 'valid' of undefined
任何幫助?我的猜測是,當我從視圖訪問JSON時,它已經被加載,但是當我嘗試從控制器訪問它時,它還有一些事實,但尚未分配$scope.tokenValidate
。
你是什麼意思由未能正確讀取JSON數據?任何細節或錯誤或任何錯誤的例子? –
控制檯中會出現一些錯誤 – maddygoround
如果在成功回調$ http的情況下是否處理上述情況? 和'$ scope.tokenValidate.valid'和'$ scope.tokenValidate.expired'給出布爾值或字符串? – Rahul