私は通常のMVCサーバーサイドのコーディングに慣れていて、今は角度を覚えようとしています。私は、ユーザーがサインインした競技にチームを追加できるユーザーインターフェイスを作りたいと思っています。私が使っているリストからチームを削除するには:リストから項目を削除する
angular.module('Xtho.InschrijfController', [])
.controller("InschrCtrl", [
'$scope', '$http', function ($scope, $http) {
$scope.model = {};
$scope.wedstrijden = {};
$scope.states = {
};
$scope.new = {
ploeg: {}
};
$http.get('/inschrijvingen/IndexVM').then(function (data) {
$scope.model = data;
});
$scope.Vploeg = function (id, index) {
$http.post('/inschrijvingen/PloegVerwijderen', { id: id }).then(function (response) {
$scope.model.splice(index, 1);
});
};
}
]);
、これはビュー内にある:
<p>{{ploegen.PloegNaam}} <a href="#" ng-click="Vploeg(ploegen.PloegID, $index)"><span class="fa fa-trash-o" aria-hidden="true"></span></a></p>
コード作品!ただし、レコードはデータベースから削除されるため、ページに表示されるリストには残ります。コンソールに次のエラーが表示されます。「n.model.spliceは関数ではありません」、この問題を解決する最善の方法は何ですか?
$ http.getをあなたの投稿の後ろにある関数にリコールすることができます。 –
'$ scope.model'はオブジェクトであり、配列ではありません。 '.splice'は配列プロトタイプの関数です。 'model'が本当にリストであれば、配列を使います。リストにオブジェクトを使用しないでください。 – Claies