Jab*_*baa 2 javascript angularjs angularjs-ng-repeat angularjs-ng-model
我的ng-repeat数组有一个奇怪的问题.
目前,我正在列出一个数组使用,ng-repeat并放置一个编辑按钮来编辑特定项目并保存到数据库.
但问题是当item文本框中的特定ng-repeat项被更改时,项目也会更改.
这是我的问题的小提琴
https://plnkr.co/edit/D5NQitsRg7sCfZBE9IaB?p=preview
更改textfield中的值也会影响其中的值 ng-repeat
你正在分配变量的引用,这就是它变化的原因.你必须复制变量.以下是工作示例: -
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
$scope.items= [
{id:1,name:'first'},{id:2,name:'second'}
];
$scope.editItem = function(index){
//edit
$scope.edit = angular.copy($scope.items[index]);
}
});Run Code Online (Sandbox Code Playgroud)
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="myCtrl">
<p ng-repeat="item in items">{{item.id+','+item.name}}
<span ng-click="editItem($index)">Click to Edit {{item.name}} item</span>
</p>
<h2>Edit</h2>
<input type="text" ng-model="edit.name" />
</div>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
267 次 |
| 最近记录: |