我正在显示项目列表,当我删除当前项目时,我该如何获取下一项?这是我的代码:
<div ng-repeat="item in itemList = (itemsList() |filter:{status: code}|orderBy: 'Time'| orderBy:'sortingOrder')" ng-init="initCurrentItem(item,$index)">
<div id="itemRow" ng-click="selectedItem(item,$index)"
ng-class="{'active':getCurrentItem().index === $index}">
<div id="listRowContent">
<div>{{item.name}}</div>
<div>{{item.type}}/div>
<div> {{item.Time}}</div>
显示项目列表,我在其他部分显示详细项目。这是我的控制器:
$scope.itemsList = function () {
return ListService.getItemsList();
};
$scope.initCurrentItem = function(item,index){
if(index === 0){
$scope.selectedList(item,index);
}
};
$scope.selectedList= function(currentList,index){
currentList.index = index;
$scope.currentListDetails = currentList;
}
};
$scope.getCurrentMail = function(){
return $scope.currentListDetails;
}
在我的控制器中,我从服务获取itemslist
并在一个部分中显示列表,并使用getCurrentItem()
突出显示第一个元素。我在另一部分显示详细列表。现在,当我选择一个项目并将其删除时,它突出显示下一个项目,但仍在详细部分中显示已删除的列表项目详细信息。如何获取下一个元素,以便将该对象分配到我的currentListDetails
?
答案 0 :(得分:0)
我认为删除所选项目后,您的列表不会更新。您可以“重新加载”,并通过重新分配列表来获取所有列表,即 SELECT wp_posts.post_title, wp_postmeta.meta_value AS 'Contact Details'
FROM wp_posts
LEFT JOIN wp_term_relationships ON ( wp_posts.ID = wp_term_relationships.object_id )
LEFT JOIN wp_term_taxonomy ON ( wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id )
LEFT JOIN wp_postmeta ON ( wp_postmeta.post_id = wp_posts.ID )
WHERE wp_posts.post_status = 'publish'
AND wp_postmeta.meta_key = 'contact'
AND wp_term_taxonomy.term_id =2
ORDER BY post_title;
;
或者当您删除元素时,您也可以在当前列表$scope.currentList = whateverservice.getList()
中搜索,
然后使用splice(int,int)方法删除该元素。我更喜欢第二种方法,只有一种请求,而第一种方法需要2次请求。