Angularjs $scope.statusMessage未定义
无法读取undefined的属性“statusMessage”,这是我在将$rootScope更改为$scope时遇到的错误。我只想将$scope.statusMessage设置为工厂的结果,以便将其绑定到html。你能指出我哪里弄错了吗。多谢各位 将您的服务更改为:Angularjs $scope.statusMessage未定义,angularjs,Angularjs,无法读取undefined的属性“statusMessage”,这是我在将$rootScope更改为$scope时遇到的错误。我只想将$scope.statusMessage设置为工厂的结果,以便将其绑定到html。你能指出我哪里弄错了吗。多谢各位 将您的服务更改为: angular.module("MainLogin.controller", []) // ========= Controllers .controller("LogInController", function($scope
angular.module("MainLogin.controller", [])
// ========= Controllers
.controller("LogInController", function($scope) {
})
.controller("CreateAccountController", function ($scope, $rootScope, createAccountService) {
$rootScope.statusMessage = null;
$scope.ActionCreateAccount = function () {
$scope.statusMessage = createAccountService.createAccount($scope.createAccount);
console.log($scope.statusMessage);
}
})
// <======== Controllers
// ========= Factories
.factory("createAccountService",["$http", function($http, $scope) {
var fac = {};
fac.createAccount = function (accountDetail) {
return $http({
url: '/Account/CreateAccount',
data: { account: accountDetail },
method: 'post'
})
.then(function (response) {
debugger;
if (response.data.status == "1") {
$scope.statusMessage = "Successfully created the account"
alert($scope.statusMessage);
} else {
$scope.statusMessage = response.data.status
alert($scope.statusMessage);
}
})
}
return fac;
}])
和您的控制器:
.factory("createAccountService",["$http", function($http, $scope) {
var fac = {};
fac.createAccount = function (accountDetail) {
return $http({
url: '/Account/CreateAccount',
data: { account: accountDetail },
method: 'post'
});
}
return fac;
}])
非常感谢。成功了。为什么我可以在工厂中提醒response.data.status,但我无法通过它?
.controller("CreateAccountController", function ($scope, $rootScope, createAccountService) {
$scope.statusMessage = null;
$scope.ActionCreateAccount = function () {
createAccountService.createAccount($scope.createAccount)
.then(function(response){
if (response.data.status == "1") {
$scope.statusMessage = "Successfully created the account"
alert($scope.statusMessage);
} else {
$scope.statusMessage = response.data.status
alert($scope.statusMessage);
}
console.log($scope.statusMessage);
});
}})