Articles avec #emberjs tag

Publié le 8 Septembre 2015

Aujourd'hui je travaille sur une appli emberJS et j'ai un service REST qui retourne une structure JSON dont une des propriétés est du texte HTML.

Le fonctionnement par défaut d'Ember est d'échapper tout le contenu qui est rendu dans les template Handlebars. C'est une bonne chose d'un point de vue sécurité.

Seulement dans mon cas j'ai besoin de rendre ce texte non-échappé. (Attention je précise bien que ce contenu est généré uniquement par les administrateurs du site et non par les utilisateurs ce qui ouvrirait une énorme faille de sécurité).

Pour résoudre ce problème j'ai donc défini une propriété calculée sur mon modèle:

App.FaqEntry = DS.Model.extend({
   question: DS.attr('string'),
   answer: DS.attr('string'),
   htmlAnswer: function () {
      return
this.get('answer').htmlSafe();
   }.property('answer')
});

Ensuite il n'y a plus qu'à utiliser directement la propriété htmlAnswer dans le template:

<div>{{entry.htmlAnswer}}</div>

Voir les commentaires

Rédigé par Bliz

Publié dans #Javascript, #EmberJS

Repost 0