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

  • Dom Esposito

    Dom Esposito

    26 Mayıs 2011
  • Eric Anthony

    Eric Anthony

    13 AĞUSTOS 2011
  • Murray Winiata

    Murray Winia

    2 ŞUBAT 2009