SORU
16 Mart 2013, CUMARTESİ


Nasıl bir öğeyi silmek veya bir dizi ng-click kullanarak nesne?

Bana düğmesine tıklandığında ama işlevi - $digest kullanabilirim? kafam karıştı sanırım ne zaman bir öğeyi kaldırmak için sağlayan bir fonksiyon yazmaya çalışıyorum

HTML & app.js:

<ul ng-repeat="bday in bdays">
  <li>
    <span ng-hide="editing" ng-click="editing = true">{{bday.name}} | {{bday.date}}</span>
    <form ng-show="editing" ng-submit="editing = false">
      <label>Name:</label>
      <input type="text" ng-model="bday.name" placeholder="Name" ng-required/>
      <label>Date:</label>
      <input type="date" ng-model="bday.date" placeholder="Date" ng-required/>
      <br/>
      <button class="btn" type="submit">Save</button>
      <a class="btn" ng-click="remove()">Delete</a>
    </form>
  </li>
</ul>

$scope.remove = function(){
  $scope.newBirthday = $scope.$digest();
};

CEVAP
16 Mart 2013, CUMARTESİ


Diziden çıkarmak için ihtiyacınız olan ve sizin için bday Madde geçebilir öğe kaldırmak için biçimlendirme işlevi kaldırın. Denetleyici öğenin dizini aramak ve diziden çıkarın

<a class="btn" ng-click="remove(item)">Delete</a>

Denetleyicisi sonra:

$scope.remove = function(item) { 
  var index = $scope.bdays.indexOf(item);
  $scope.bdays.splice(index, 1);     
}

Açısal otomatik olarak bdays dizi değişikliği algılar ve ng-repeat güncelleme yapacak

DEMO: http://plnkr.co/edit/ZdShIA?p=preview

Eğer sunucu ile canlı güncellemeler yapıyor $resource aynı anda dizi güncelleştirmeleri yönetmek için kullanarak oluşturduğunuz bir hizmeti kullanmak istiyorsunuz Eğer sunucu güncellemeleri . EDİT:

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • akalyne

    akalyne

    13 Mayıs 2009
  • Elefant Traks

    Elefant Trak

    5 HAZİRAN 2007
  • thelonelyisland

    thelonelyisl

    23 Aralık 2005