2013-05-19 11 views
14

क्या इस के बीच का अंतर है:माइनस टहनी ब्लॉक परिभाषा में

{%block body %} 

और उस

{%block body -%} 
+0

संभावित डुप्लिकेट [{% ब्लॉक बॉडी -%} की तरह ट्विग में एक ब्लॉक के लिए हाइफ़न का मतलब क्या है?] (Http://stackoverflow.com/questions/17298902/what-does-the-hyphen-mean -for-a-block-in-twig-like-in-block-body) –

+3

हाँ, लेकिन मैंने 1 9 मई 1313 को 11:56 और \t माइकल पेरिन ने 25 जून 1313 को 13:38 बजे पूछा। और इस पृष्ठ पर हमारे पास SirDerpington – nonlux

उत्तर

26

बस दस्तावेज में इसके बारे में कुछ पढ़ा है, यकीन नहीं करता है, तो यह भी {% block ... %} टैग पर लागू होगी। Twig whitespace control

{% set value = 'no spaces' %} 
    {#- No leading/trailing whitespace -#} 
    {%- if true -%} 
     {{- value -}} 
    {%- endif -%} 
{# output 'no spaces' #} 

वहाँ भी दिए गए एक और उदाहरण है जो चर के सामने खाली स्थान के ट्रिम है, लेकिन doesnt't अंत में यह कर - तो प्रभाव केवल एक ही दिशा में है।

{% set value = 'no spaces' %} 
    <li> {{- value }} </li> 
{# outputs '<li>no spaces </li>' #} 

ऊपर नमूना डिफ़ॉल्ट खाली स्थान के नियंत्रण आपरिवर्तक पता चलता है, और आप इसे कैसे उपयोग कर सकते हैं टैग के आसपास सफेद स्थान को निकालना। ट्रिमिंग स्पेस टैग के उस तरफ के लिए सभी व्हाइटस्पेस का उपभोग करेगा। यह एक टैग

तो मुझे लगता है आपके दिए गए exmaples में अंतर यह है कि पहले खंड में body वहाँ एक खाली स्थान के लिए किया जाएगा के बाद ब्लॉक शुरू कर दिया है के एक तरफ ट्रिमिंग खाली स्थान के उपयोग करने के लिए संभव है। आपके दूसरे उदाहरण में body - ब्लॉक शुरू होने के बाद कोई भी नहीं है। यह देखने के लिए कि यह कैसे काम करता है, बस प्रलेखन प्रविष्टि पढ़ें। Firebug में

{% set value = 'NO space in source code after/before "value"' %} 
<li> {{- value -}} </li> 
... 

आउटपुट HTML मार्कअप में: no whitespaces afer value

जबकि इस

{% set value = 'space in source code after "value"' %} 
<li> {{- value }} </li> 
... 

संपादित

एक साधारण उदाहरण दस्तावेज में उदाहरण प्रदर्शित करने के लिए

ouputs:

whitespace between "value" and closing </li>

सूचना "मूल्य" और दूसरे उदाहरण में समापन </li> के बीच की जगह। तो शून्य से - उदाहरण के बाद या दोनों तरफ से पहले एक सफेद जगह मिटा देता है एक परिवर्तनीय।

+0

से बहुत अच्छा जवाब है, विस्तृत उत्तर के लिए आपका बहुत बहुत धन्यवाद। – nonlux

+0

यह समझने में दिलचस्प होगा कि "व्हाइटस्पेस कंट्रोल मॉडिफायर" की आवश्यकता सिर्फ मार्कअप के संबंध में की जाती है या यदि इसे रिक्त स्थान से विभाजित * TWIG * निर्देशों के बीच भी आवश्यक है (जैसे ''' {% अगर सही%} (स्पेस | टेम्पलेट में नई लाइन) {% कुछ सेट करें = {}%} '' '), ** और ** यदि दोनों पक्षों पर संशोधक की आवश्यकता होगी (' '' .. सत्य-%} '' '' '' '{% - सेट। .''') या सिर्फ एक पर्याप्त है। – Kamafeather

+0

ठीक है, मैंने अभी कोशिश की है। दरअसल यह मायने रखता है। लेकिन केवल एक संशोधक ('' 'true%}' '' या '' '{% set''' पर) पर्याप्त है।अन्यथा लगता है कि सभी spacings माना जाता है (या तो HTML मार्कअप के बिना शुद्ध TWIG निर्देशों के बीच)। – Kamafeather

संबंधित मुद्दे