删除单击的项angularjs
我有一个单击事件,我想从范围中删除一个具有给定id的元素删除单击的项angularjs,angularjs,angularjs-scope,angular-ui-bootstrap,Angularjs,Angularjs Scope,Angular Ui Bootstrap,我有一个单击事件,我想从范围中删除一个具有给定id的元素 <a data-placement="bottom" ng-click='Off(product.productid)'><i class="fa fa-times"></i></a> Controller.js 我该怎么做 更新 我误解了数组切片。我想用目标id标识,但正确的方法是 <a data-placement="bottom" ng-click='Off(product)'
<a data-placement="bottom" ng-click='Off(product.productid)'><i class="fa fa-times"></i></a>
Controller.js
我该怎么做
更新
我误解了数组切片。我想用目标id标识,但正确的方法是
<a data-placement="bottom" ng-click='Off(product)'><i class="fa fa-times"></i></a>
$scope.Off = function(product) {
var index = $scope.products.indexOf(product);
if (index != -1) {
$scope.products.splice(index, 1);
}
};
但是,如果我想暂停,我将如何使用产品ID进行restapi更新?您是否在产品阵列上调用了triad slice?是的$scope.product.productid.sliceidx,1;但不会被删除我认为$scope.product=$scope.product.sliceidx,idx+1可能会起作用。切片不会改变数组,因此必须重新分配它。您应该仔细阅读slice的详细信息:Error:$scope.product.slice不是函数哦,对了……您需要在产品数组中调用slice。不是idx指定的单个产品。产品[idx]返回什么?
'use strict';
/* Services */
// Demonstrate how to register services
// In this case it is a simple value service.
angular.module('konfiguratorApp.services', []);
konfigurator.factory("ConfigurationService", function($http) {
return {
get: function() {
return $http.get('/api/products/');
}
};
});
angular.module('konfiguratorApp.controllers', [])
.controller('Configurator', ['$scope', 'products',
function($scope, products) {
$scope.products = products.data.data;
$scope.totalItems = products.data.total;
$scope.per_page = products.data.per_page;
$scope.currentPage = products.data.current_page;
}]);
function Events($scope, $modal, $log) {
$scope.visible = true;
$scope.items = ['item1', 'item2', 'item3'];
$scope.modalEdit = function() {
var modalInstance = $modal.open({
templateUrl: '/edit',
windowClass: 'xx-dialog',
controller: ModalInstanceCtrl,
resolve: {
items: function() {
return $scope.items;
}
}
});
};
$scope.Off = function(idx) {
console.log($scope.product);
$scope.product.slice(idx,1)
alert($scope.product[idx]);
};
$scope.toggle = function() {
$scope.visible = !$scope.visible;
};
}
<a data-placement="bottom" ng-click='Off(product)'><i class="fa fa-times"></i></a>
$scope.Off = function(product) {
var index = $scope.products.indexOf(product);
if (index != -1) {
$scope.products.splice(index, 1);
}
};