Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 嵌套ngRepeat中的角度JS匹配模型 普朗克_Angularjs_Angularjs Ng Repeat - Fatal编程技术网

Angularjs 嵌套ngRepeat中的角度JS匹配模型 普朗克

Angularjs 嵌套ngRepeat中的角度JS匹配模型 普朗克,angularjs,angularjs-ng-repeat,Angularjs,Angularjs Ng Repeat,可以通过单击加号添加行 如您所见,每个跨距都将使用放入其中一个字段的任何值填充任何行 当我清楚地提到某一行时,这怎么可能呢 <input class="rt-input" type="text" ng-model="realm.rows[row][heading].content"> 发生这种情况的原因是,每一个新行都是这样创建的: var protoRow = $scope.realm.rows[0]; ... $sc

可以通过单击加号添加行

如您所见,每个跨距都将使用放入其中一个字段的任何值填充任何行

当我清楚地提到某一行时,这怎么可能呢

 <input class="rt-input" type="text" ng-model="realm.rows[row][heading].content">

发生这种情况的原因是,每一个新行都是这样创建的:

var protoRow = $scope.realm.rows[0];
...
$scope.realm.rows[rowCount] = protoRow;
由于
$scope.realm.rows[0]
(因此
protoRow
)是一个对象,因此它是通过引用传递的。因此,每个新表行都绑定到
realm.rows
中的同一个对象


您应该创建对象的新副本,而
angular.copy()
正是该作业的工具:

var protoRow = $scope.realm.rows[0];
...
$scope.realm.rows[rowCount] = angular.copy(protoRow);


另请参见,我已经修改了您的plnkr使其工作

问题是您的所有行都引用了同一个对象

所以我只是用
angular.copy()


您的plunker正在生成此错误消息:
TypeError:无法设置未定义的属性“content”
,并且
ng model
与您在问题中发布的内容不匹配。你链接到错误的Plunk了吗?
var protoRow = angular.copy($scope.realm.rows[0]);
$scope.realm.rows[rowCount] = angular.copy(protoRow);