我使用Angular Straph Modal
更改用户密码,我定义了2个空变量,当用户点击按钮更改时,调用函数并将参数发送到我们的API,但是某些原因它无法正常工作,如果我将相同的输入与相同的变量和函数放在模态之外,它可以毫无问题地进行数据绑定,我已经检查了模态$scope
并且它可以工作但是对于我无法获得用户填写数据的一些原因,我总是得到null
而不是用户价值。
这是我的HTML。
<div class="u-Basic-Modal--body">
<div class="form-group">
<label>Contraseña Actual:</label>
<input type="password" class="form-control" ng-model="oldPassword"/>
{{ oldPassword }}
</div>
<div class="form-group">
<label>Nueva Contraseña:</label>
<input type="password" class="form-control" ng-model="newPassword"/>
{{ newPassword }}
</div>
</div>
<div class="u-Basic-Modal--footer text-right">
<button class="u-Basic-Modal--button cancel" ng-click="$hide()">Cancelar</button>
<button class="u-Basic-Modal--button success" ng-click="changePassword()">Aplicar</button>
</div>
我的控制器。
app.controller('usersProfileCtrl', ['$scope', 'apiService', '$rootScope', 'userResolution', 'statusBarService',
'$modal', function($scope, apiService, $rootScope, userResolution, statusBarService, $modal) {
$scope.user = $rootScope.userData;
$scope.newPassword = null;
$scope.oldPassword = null;
userResolution().then(function() {
if ($scope.user.firstName === null) {
$scope.user.firstName = '';
} if ($scope.user.lastName === null) {
$scope.user.lastName = '';
}
});
$scope.saveData = function() {
apiService.saveUser($scope.user).success(function() {
apiService.getUser($scope.user.id).success(function(response) {
statusBarService.showNote('LABEL_DONE', true);
$scope.user = response.data;
});
});
};
var importsModal = $modal({
scope: $scope,
template: 'components/administration/users/changepassword-tpl.html',
show: false
});
$scope.setPassword = function() {
importsModal.$promise.then(importsModal.show);
};
$scope.changePassword = function() {
apiService.changeUserPassword($scope.user, $scope.newPassword, $scope.oldPassword)
.success(function() {
importsModal.hide();
});
};
}]);
希望你们能帮助我。 此致!