2012-07-12 13 views
40

मैं एक एंबर संपत्ति जो html टैग्स (<br />, <strong>, <p>, <span>, और इसी तरह सामान) भी शामिल है है भी शामिल है।दिखाएँ संपत्ति जो html टैग

मैं इस पाठ से बचने के लिए एम्बर को कैसे बता सकता हूं? क्या एम्बर से कोई डिफ़ॉल्ट हैंडलबार सहायक है, या मुझे अपना खुद लिखने की ज़रूरत है?

उत्तर

79

http://handlebarsjs.com/ से

Handlebars एचटीएमएल-निकल जाता है एक {{expression}} द्वारा लौटाए गए मान।
यदि आप हैंडलबार्स को किसी मूल्य से बचने के लिए नहीं चाहते हैं, तो "ट्रिपल-स्टैश" का उपयोग करें।

{{{expression}}}

+2

बस अगर कोई है प्रतीक के बराबर देख रहा है, इसकी '== अभिव्यक्ति' – dhilipsiva

+0

जैसा कि मोरहुक द्वारा उल्लिखित है, आप [Ember.String.htmlSafe()] (http://emberjs.com/api/classes/Ember.String) में मान भी लपेट सकते हैं .html # method_htmlSafe)। यह उपयोगी है अगर मूल्य एक एडन/घटक में पारित किया जा रहा है जिसका आपके पास पूर्ण नियंत्रण नहीं है। – kjb

16

Ember.js के भीतर आप htmlSafe विधि है, जो String प्रोटोटाइप में जोड़ा जाता है के माध्यम से यह कर सकते हैं, http://jsfiddle.net/pangratz666/jNAQ6/ देखें:

Handlebars:

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

जावास्क्रिप्ट:

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

यह काम नहीं करता है। {{App.html}} एचटीएमएल तत्वों को भी – TMQuinn

+0

'.htmlSafe()' विधि की आवश्यकता है जिसकी मुझे आवश्यकता है – kevnk

+2

नवीनतम एम्बर (2.6.1) के लिए, मैंने [Ember.String.htmlSafe() विधि का उपयोग किया है] (http://emberjs.com/api/classes/Ember.String.html#method_htmlSafe) – morhook

3

एंबर 2.x, जावास्क्रिप्ट

का उपयोग कर एक स्ट्रिंग नहीं छोड़ा जाएगा और उत्पादन एंबर टेम्पलेट का उपयोग कर बनाने के लिए आप htmlSafe सहायक का उपयोग कर सकते हैं।

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

लौटाई स्ट्रिंग हैंडलबार टेम्पलेट इंजन से बच निकले HTML नहीं होंगे।

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

उपयोग Handlebars केवल

वैकल्पिक रूप से, आप Handlebars टेम्पलेट के लिए कच्चे एचटीएमएल गुजरती हैं और ट्रिपल कोष्ठक

अंदर Handlebars खाका

का उपयोग करके कच्चे HTML आउटपुट प्राप्त कर सकते हैं
<div>{{{raw_html_content}}}</div> 
संबंधित मुद्दे