Javascript AngularJS ng repeat不跟踪模型中的深度变化

Javascript AngularJS ng repeat不跟踪模型中的深度变化,javascript,angularjs,Javascript,Angularjs,我在控制器中有一个模型对象,我想用特定的HTML重复它。模型对象由多个动态添加的“键”、“值”对组成,“值”部分是一个数组。但是,每当我尝试将项目动态推送到模型对象中任何键的“值””数组中时,“ng repeat”不会更新。有人能给我一个解决方案吗?如果我以错误的方式实现了它,请同时提出修改建议。但我更希望模型对象保持不变 var myCtrl = function($scope) { $scope.myModelObject = {}; $scope.addToModelObjec

我在控制器中有一个模型对象,我想用特定的HTML重复它。模型对象由多个动态添加的“”、“”对组成,“”部分是一个数组。但是,每当我尝试将项目动态推送到模型对象中任何键的“值””数组中时,“ng repeat”不会更新。有人能给我一个解决方案吗?如果我以错误的方式实现了它,请同时提出修改建议。但我更希望模型对象保持不变

var myCtrl = function($scope) {
   $scope.myModelObject = {};
   $scope.addToModelObject = function(key, value) {
      if($scope.myModelObject[key] == undefined) {
         $scope.myModelObject[key] = [];
      }
      $scope.myModelObject[key].push(value);
   }
}

myCtrl['$inject'] = ['$scope'];

<li ng-repeat="(key, value) in myModelObject"><!-- my html goes here --></li>
var myCtrl=function($scope){
$scope.myModelObject={};
$scope.addTomodeObject=函数(键,值){
if($scope.myModelObject[key]==未定义){
$scope.myModelObject[key]=[];
}
$scope.myModelObject[key].push(值);
}
}
myCtrl['$inject']=['$scope'];

  • 我使用addTomodeObject()函数动态添加到模型对象。

    你能发布一个代码示例或一个JSFIDLE吗?我建议你添加一个FIDLE/plunk来澄清你的问题。我怀疑你是将值推到原始数组还是它的克隆。正如您所说,“值”部分是一个数组,您很可能使用了克隆原始数组的
    .splice()
    方法。请尝试在此处重现您的问题:问题已解决,我键入了$scope.myModelObject=[];而不是$scope.myModelObject={};在我完全忽略的控制器中。抱歉你们的疏忽,谢谢你们的评论。