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

  • adrianisen

    adrianisen

    25 Kasım 2009
  • mist64

    mist64

    30 Mayıs 2006
  • Slave Boy Films - Fandom from a Galaxy Far Far Away

    Slave Boy Fi

    12 HAZİRAN 2009