角度数据绑定更新无效

时间:2014-01-23 04:59:22

标签: node.js angularjs

我还是Angular的新手,在尝试编写一些简单的代码来更新用户信息时只是碰壁了。单击该按钮时,如果我将其写入控制台,$ scope.user会显示更新的值,但是$ scope.user。$ update()仍然传递旧值。

这是观点。

<form role="form" class="profile-form">
  <h1>Account Settings</h1>
  <div class="form-group">
    <label for="exampleInputEmail1">Email address</label>
    <input type="email" class="form-control" id="userEmail" ng-model="user.email"  disabled>
  </div>
  <div class="form-group">
    <label for="username">Username</label>
    <input type="text" class="form-control" id="name" ng-model="user.name">
  </div>
  <div class="form-group">
    <label for="exampleInputPassword1">Password</label>
    <input type="password" class="form-control" id="userPassword" placeholder="Password">
  </div>


  <button type="submit" class="btn btn-default" ng-click="updateInfo()">Submit</button>

  <pre>user={{user | json}}</pre>
</form>

这是角度控制器中包含的内容。

    angular.module('mean.users')
.controller('UserController', ['$scope', '$routeParams', '$location', 'Global', 'User', function ($scope, $routeParams, $location, Global, User) {
$scope.global = Global;

$scope.find = function () {
    User.get(function (user) {
        $scope.user = user;
    });
};

$scope.updateInfo = function() {
    var user = $scope.user;   
    user.$update();

    console.log(user);
};

}]);

我有一个控制器来进行实际更新。

exports.update = function (req, res) {
var user = req.user;

user.save(function (err) {
    if (err) {
        res.status(500).send({
            errors: err.errors
        });
    } else {
        res.jsonp(user);
    }
});

}

控制器中保存的用户对象是否应包含我所做的最新更改?

0 个答案:

没有答案