ちょっと、私はdupデータに関して角度のあるアプリに問題があります。私は正確なngリピートまで問題を特定しましたが、何が間違っているかはわかりません。データが重複しているとエラーが表示されていますが、データベースに現在4つしかないため、どのように表示されているのかわかりません。私は名前を変更するなどのようなさまざまなことを試しましたが、私には正しいと思われるので、なぜエラーが出るのか少し困惑しています。おそらくデータが2回読み込まれているかもしれないとは思いますが、どうすればよいのでしょうか?とにかく私は関連するコードを掲示し、そこにいくつかの角度の神が私の方法で私を指すことができる場合は、私は永遠に感謝するだろう。ng:反復を繰り返す。 ng-repeatで重複データを取得する
エラーメッセージがある: angular.min.js:84エラー:[ngRepeat:dupes] http://errors.angularjs.org/1.2.9/ngRepeat/dupes?p0=task%20in%20tasks%20track%20by%20task.id%20%7C%20filter%20%3A%20filterTask&p1=undefined
のJavaScript
app.controller('tasksController', function ($scope, $http) {
getTask(); // Load all available tasks
function getTask() {
$http.post('ajax/getTask.php').success(function (data) {
$scope.tasks = data;
});
}
$scope.addTask = function (task) {
$http.post('ajax/addTask.php?task=' + task).success(function (data) {
getTask();
$scope.taskInput = '';
});
};
$scope.deleteTask = function (task) {
if (confirm('Are you sure to delete this line?')) {
$http.post('ajax/deleteTask.php?taskID=' + task).success(function (data) {
getTask();
});
}
};
$scope.toggleStatus = function (item, status, task) {
if (status == '2') {
status = '0';
} else {
status = '2';
}
$http.post('ajax/updateTask.php?taskID=' + item + '&status=' + status).success(function (data) {
getTask();
});
};
});
HTML:
<div class="task">
<label class="checkbox" ng-repeat="task in tasks track by task.id | filter : filterTask">
<input
type="checkbox"
value="{{task.STATUS}}"
ng-checked="task.STATUS==2"
ng-click="toggleStatus(task.ID,task.STATUS, task.TASK)"/>
<span ng-class="{strike:task.STATUS==2}">{{task.TASK}} [{{task.ID}}]</span>
<a ng-click="deleteTask(task.ID)" class="pull-right"><i class="glyphicon glyphicon-trash"></i></a>
</label>
</div>
エラーメッセージを追加できますか? –
確かに......................... – Seamy
'track by $ index'を試してみてください – Akis