1
嘗試通過電子郵件重置密碼。單擊電子郵件中的重置鏈接並指向重置頁面後,控制檯可以輸出「$ scope.username」值,但是下一行會將錯誤顯示爲未定義的「用戶名」。 Error ScreenshotAngularjs屬性在控制器中未定義
不知道哪裏出錯了。謝謝。
.controller('resetCtrl', function(User, $routeParams, $scope, $timeout, $location) {
app = this;
app.hide = true;
User.resetUser($routeParams.token).then(function(data) {
if (data.data.success) {
app.hide = false;
app.successMsg = 'Please enter a new password';
$scope.username = data.data.user.username;
} else {
app.errorMsg = data.data.message;
}
});
app.savePassword = function(regData, valid, confirmed) {
app.errorMsg = false;
app.disabled = true;
app.loading = true;
console.log($scope.username); // test output
app.regData.username = $scope.username;
User.savePassword(app.regData).then(function(data) {
app.loading = false;
if (data.data.success) {
app.successMsg = data.data.message + '...Redirecting';
$timeout(function() {
$location.path('/login');
}, 2000);
} else {
app.disabled = false;
app.errorMsg = data.data.message;
}
});
}
});
謝謝Sajeetharan。但是,儘管控制檯能夠在錯誤前一行輸出「app.username」的值,但問題仍然存在。 – neo
你是什麼意思 – Sajeetharan
對不起,我沒有意識到我可以通過編輯問題來插入屏幕截圖。所以我使用了console.log()函數來查看該值是否已經傳遞給變量,實際上它的確如屏幕截圖一樣代碼和我的代碼。但是當我想使用它時,下一行顯示未定義。 – neo