在Angularjs更新型号 [英] Updating Model in Angularjs

查看:251
本文介绍了在Angularjs更新型号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

下面是plnkr: http://plnkr.co/edit/s9MwSbiZkbwBcPlHWMAq? p = preVIEW

如果我两次添加信息,最新数据是一样的,我怎么能prevent模型不能更新?

  $ scope.personList = [];
  $ scope.newPerson = {};
  $ scope.columns = {[现场:名称},{场:'国家'}]
  $ scope.gridOptions = {
    enableSorting:真实,
    columnDefs:$ scope.columns,
    onRegisterApi:功能(gridApi){
      $ scope.gridApi = gridApi;
    }
  };  $ scope.addPerson =功能(){  $ scope.personList.push($ scope.newPerson);}  $ http.get('file.json')
    .success(功能(数据){
      $ scope.personList = data.records;
      $ scope.gridOptions.data = data.records;
      的console.log($ scope.gridOptions.data);
    });


解决方案

使用制作副本 angular.copy()这样你就不会推引用同一个对象到阵列中各一次。

  $ scope.addPerson =功能(){
  VAR newPerson = angular.copy($ scope.newPerson);
  $ scope.newPerson = {}; //重置为明确的说法
  $ scope.personList.push(newPerson);
}

Here is the plnkr : http://plnkr.co/edit/s9MwSbiZkbwBcPlHWMAq?p=preview

If I add information twice, latest data are the same, how can I prevent model from updating?

 $scope.personList = [];
  $scope.newPerson = {};
  $scope.columns = [{ field: 'Name' }, { field: 'Country' }];
  $scope.gridOptions = {
    enableSorting: true,
    columnDefs: $scope.columns,
    onRegisterApi: function(gridApi) {
      $scope.gridApi = gridApi;
    }
  };

  $scope.addPerson = function(){

  $scope.personList.push($scope.newPerson);

}

  $http.get('file.json')
    .success(function(data) {
      $scope.personList = data.records; 
      $scope.gridOptions.data = data.records;
      console.log($scope.gridOptions.data);
    });

解决方案

Make a copy using angular.copy() so you aren't pushing reference to the same object into the array each time.

$scope.addPerson = function(){
  var newPerson= angular.copy($scope.newPerson);
  $scope.newPerson ={}; // reset to clear view
  $scope.personList.push(newPerson);    
}

这篇关于在Angularjs更新型号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆