SORU
6 Kasım 2012, Salı


Nasıl HTML çıktıları olan angularjs filtre oluşturmak için

Okuduktan sonra AngularJS tutorial step-9 Html içine boolean veri dönüştürmek gerekir kendi AngularJS benim filtre oluşturdum.

Burada filtre kodum:

angular.module('phonecatFilters', []).filter('iconify', function () { // My custom filter
    return function (input) {
        return input ? '<i class="icon-ok"></i>' : '<i class="icon-remove"></i>';
    }
});

İşte benim HTML kodu:

<dt>Infrared</dt>
  <dd>{{phone.connectivity.infrared | iconify }}"></dd>

Sorun borwser görüntüler tam anlamıyla değer verdiğini gösterir

<i class="icon-ok"></i>

simgeleri (veya html render) olarak görünmelidir.

Here is JSFiddle example

Bazı sanitisation bu işlem sırasında oluşur.

Bu temizleme, bu belirli bir filtre için devre dışı bırakmak mümkün mü?

HTML çıktısı iade etmeyerek simgeleri görüntülemek için nasıl biliyorum ayrıca filtreden ziyade sadece 'Tamam' ya da 'o zaman alternatif olan' metin: kaldırın

<i class="icon-{{phone.connectivity.infrared | iconify}}"><i>

ama istediğim şey bu değil.

CEVAP
6 Kasım 2012, Salı


ng-bind-html Direktif (modül sterilize alma ve dosya js gerektirir) kullanmalısınız: http://docs.angularjs.org/api/ngSanitize.directive:ngBindHtml

<span ng-bind-html='phone.connectivity.infrared | iconify'></span>

Ayrıca CSS almak gerekir (sanırımBootstrap) çalışan simgesini görmek mümkün.

working example sağladım.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ciaran Blumenfeld

    Ciaran Blume

    20 NİSAN 2009
  • karneson

    karneson

    23 Temmuz 2006
  • The Dubstep FX

    The Dubstep

    5 Mart 2011