web-dev-qa-db-fra.com

Afficher la propriété qui inclut des balises html

J'ai une propriété ember qui inclut des balises html (<br />, <strong>, <p>, <span>, et des trucs similaires).

Comment puis-je dire ember de ne pas échapper à ce texte?

41
Lux

De http://handlebarsjs.com/

Guidon HTML-échappe les valeurs renvoyées par un {{expression}}.
Si vous ne voulez pas que le guidon échappe à une valeur, utilisez le "triple-stash".

{{{expression}}}

86
Rajat

Dans Ember.js vous pouvez le faire via la méthode htmlSafe, qui est ajoutée au prototype String, voir http://jsfiddle.net/pangratz666/jNAQ6/ :

Guidons :

<script type="text/x-handlebars" >
    {{App.html}} - {{App.unescaped}}
</script>​

JavaScript :

App = Ember.Application.create({
    html: '<b>bold text</b>',
    unescaped: function(){
        return this.get('html').htmlSafe();
    }.property('html')
});​
16
pangratz

Ember 2.x, en utilisant JavaScript

Pour rendre une chaîne sans échappement et la sortie en utilisant Ember modèles, vous pouvez utiliser htmlSafe helper.

Ember.String.htmlSafe('<div>someString</div>')

La chaîne retournée ne sera pas échappée HTML par le moteur de modèle Handlebars.

http://emberjs.com/api/classes/Ember.String.html#method_htmlSafe

Utilisez uniquement le guidon

Alternativement, vous pouvez passer le HTML brut au modèle de guidon et obtenir la sortie HTML brute en utilisant des crochets triples

Modèle de guidon intérieur

<div>{{{raw_html_content}}}</div>
3
Lorem Ipsum Dolor