2016-11-08 6 views
1

イオンと角度を使ってアプリを作成しています。私が開発したアプリでは、メインリストから特定のクーポンを削除するためにイオンのスワイプオプションを使用しました。私が問題に直面している問題は、選択されたクーポンの説明を削除することはできますが、メインリストからクーポンを削除/削除することはできません。また私はjson arrayと宣言している$rootScopeを使用しています。選択したクーポンの詳細を表示するために、選択したクーポンとその詳細がプッシュされている$scope.itemと宣言しています。私はコードのどこかで間違っているよ、それを正しくするのを助けてください。ありがとうございました。リストから項目を削除する方法

HTML:

<ion-list> 
     <ion-item ng-click="select_item(coupons)" ng-repeat="coupons in couponList" ng-model="coupons.selected"> 
      {{coupons.CouponTitle}} <br> 
      <ion-option-button ng-click="editCoupons(coupons)">Edit</ion-option-button> 
      <ion-option-button class="button-assertive" ng-click="deleteSelected(coupons)">Delete</ion-option-button> 
     </ion-item> 
    </ion-list> 
    <hr> 
    <div style="text-align:center"> 
     <div ng-repeat="item in items"> 
      Coupon offer: {{item.data.description}}<br> Valid From: {{item.data.Fromldate}} 
      <br> Valid Till: {{item.data.Todate}} </div> 

コントローラー:deleteSelected内部

$scope.items = []; 
     $rootScope.couponList = [{ CouponTitle: "Purchase worth $100", data: {description: "$50 off", Fromldate: "2016-09-09", Todate: "2016-09-18"}}, 
     {CouponTitle: "Purchase worth $300", data:{description: "$75 off", Fromldate: "2016-11-09", Todate: "2016-10-19"}}, 
     { CouponTitle: "Purchase worth $500",data:{description: "$95 off", Fromldate: "2016-09-10", Todate: "2016-09-30"}}]; 

     $scope.select_item = function (key) { 
     $scope.items.push(key); 

     } 

$scope.deleteSelected = function() { 
      $scope.items.splice($scope.items.indexOf()); 
    } 

答えて

1

1つの答えで示唆されているように、$indexメカニズムを使用して配列からオブジェクトを削除できます。

あなたがitems arrayrootscope array

ビューの両方から削除する必要があります。

<ion-option-button class="button-assertive" ng-click="deleteSelected($index,coupons)">Delete</ion-option-button> 

はコントローラー:

​​

HEre is a partial implemented fiddle

削除するアイテム配列と削除するcouponListの両方を削除する必要がありますng-repeat

+0

@jazzoria、私の答えをチェックしてください。 – Sravan

+0

これに対して 'ng-repeat'の使い方を教えてもらえますか? – jazzoria

+0

クイックリンクを確認してください。 ' ' – Sravan

0

通過指標パラメータとして、直接配列から削除します。

<ion-option-button class="button-assertive" ng-click="deleteSelected($index)">Delete</ion-option-button> 

しかし、$インデックスのためにあなたはNGリピートの$インデックス機構によるトラックを使用する必要があります。

より多くの性格確認が必要な場合は教えてください。

+0

$ indexを使用しましたが、メインリストからクーポンは削除できませんでした。 @ Jigar7521 – jazzoria

関連する問題