AngularJS का उपयोग करते समय मैं पृष्ठ पर प्रदर्शन के लिए घुंघराले ब्रेसिज़ से कैसे बच सकता हूं?


97

मैं चाहता हूं कि उपयोगकर्ता डबल घुंघराले ब्रेस देखें, लेकिन कोणीय उन्हें स्वचालित रूप से बांधता है। यह इस प्रश्न का विपरीत मामला है जहां वे पृष्ठ लोड होने पर बाइंडिंग के लिए उपयोग किए गए घुंघराले ब्रेसिज़ नहीं देखना चाहते हैं।

मैं चाहता हूं कि उपयोगकर्ता इसे देखें:

My name is {{person.name}}.

लेकिन कोणीय {{person.name}}मान के साथ बदलता है । मैंने सोचा कि यह काम कर सकता है, लेकिन कोणीय अभी भी इसे मूल्य से बदल देता है:

{{person.name}}

प्लंकर: http://plnkr.co/edit/XBJjr6uR1rMAg3NgDDJ


यदि आप पूरी तरह से एक और सीमांकक के साथ जाने के लिए तैयार हैं (जैसे [[ ]]): stackoverflow.com/questions/12923521/…
थिलो

2
धन्यवाद, मैंने देखा कि लेकिन पूरा बिंदु वास्तव में एक नमूना पृष्ठ के लिए है जिसमें दिखाया गया है कि ब्रेसिज़ कैसे काम करता है और मैं चाहता हूं कि स्रोत देखने में सक्षम हो जैसे कि नमूना दिखाने वाले पृष्ठ पर क्या है यदि यह समझ में आता है।
जेसन गोएमाट


1
@MaximeLorant पृष्ठ लोड होने पर घुंघराले ब्रेसिज़ के क्षणिक प्रदर्शन को रोकने के साथ करने के लिए एक पूरी तरह से अलग मुद्दा है, यह सवाल उन्हें पेज लोड होने के बाद भी प्रदर्शित करने और कोणीय को बंधन से रोकने के लिए है।
जेसन गोएमाट

जवाबों:


147
<code ng-non-bindable>{{person.name}}</code>

प्रलेखन @ ngNonBindable


6
आप <div> या जो भी टैग इस्तेमाल कर सकते हैं, बस ng-non-bindable जोड़ें
माइक पुग

5
क्या होगा अगर {{value}}एक इनपुट टैग मूल्य के अंदर है?
टिमो हुओवेंन

@TimoHuovinen, HTML विशेषता में घुंघराले ब्रेसिज़ आउटपुट करने के लिए मेरा उत्तर देखें ।
joeytwiddle

@TimoHuovinen आप ng-non-bindableकंटेनर तत्व में उपयोग कर सकते हैं, आप मेरा उत्तर देख सकते हैं: stackoverflow.com/a/42511222/1407491
नबी काज

यह वर्तमान में काम नहीं करता है; कोणीय 8 का उपयोग करना। @joeytwiddle का जवाब हालांकि था।
जेई कार्टर II

28

संपादित करें: कोट्स के अंदर कोष्ठक के बीच \ स्लैश जोड़ना काम करता है

{{  "{{ person.name }\}"   }}  

यह भी .. कोणीय व्याख्या की गुजरती हैं

{{ person.name }<!---->}

यह भी ..

{{ person.name }<x>} 

{{ person.name }<!>}

मुझे एक देता हैLexer Error
जेसन Goemaat

1
{{'{{{' asd '}}}}} उसके बारे में क्या
bh_earth0

4
यह एक स्वीकृत उत्तर वाले प्रश्न का देर से उत्तर है। यदि आप एक नया उत्तर प्रदान करना चुनते हैं, तो आपको यह सुनिश्चित करने के लिए अतिरिक्त सावधानी बरतनी चाहिए कि समाधान काम करता है, और सम्मोहक कारण प्रदान करना चाहिए कि यह उत्तर व्यापक रूप से स्वीकृत उत्तर के लिए क्यों पसंद किया जाता है। इसके अलावा, यह सीधे किसी भी सवाल का जवाब नहीं देता है।
दावा

इस एक के लिए की तरह {{...}<!---->}
ROMANIA_engineer

11

हमारे मामले में हम एक प्लेसहोल्डर में घुंघराले कोष्ठक पेश करना चाहते थे, इसलिए उन्हें एक HTML विशेषता के अंदर दिखाई देने की आवश्यकता थी । हमने इसका उपयोग किया:

 <input placeholder="{{ 'Hello {' + '{person.name}' + '}!' }}" ...>

जैसा कि आप देख सकते हैं, हम घुंघराले ब्रेस को अलग रखने के लिए, तीन छोटे तारों से एक स्ट्रिंग बना रहे हैं।

'Hello {' + '{person.name}' + '}!'

इसका उपयोग ng-non-bindableकरने से बचा जाता है इसलिए हम ng-तत्व पर अन्यत्र विशेषताओं का उपयोग करना जारी रख सकते हैं ।


काम करता है (हाल ही में कोणीय 8 के रूप में)।
जेई कार्टर II

3

ng-non-bindableकंटेनर में उपयोग करें , यह यहां कंटेनर के अंदर सभी तत्व पर प्रभावी है।

<div ng-non-bindable>
  <span>{{person.name}}</span>
  <img src="#" alt="{{person.name}}">
  <input placeholder="{{person.name}}">
</div>


1

कोणीय 9 के लिए अद्यतन किया गया

ngNonBindableप्रक्षेप बंधन से बचने के लिए उपयोग करें ।

<div ngNonBindable>
  My name is {{person.name}}
</div>

1

मैं पूरे पाठ में एकल कोष्ठक चाहता था और उपरोक्त समाधान मेरे लिए काम नहीं करते थे। तो क्या कोणीय की सिफारिश की गई थी।

कोणीय संस्करण: 5

आवश्यक पाठ: मेरा नाम {person.name} है।

<span>My name is {{'{'}}person.name{{'}'}}.</span>

मुझे उम्मीद है कि यह किसी की मदद करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.