2012-08-08 16 views
8

में लाइन-ब्रेक को नियंत्रित करना मेरे पास एक साधारण खोज फ़ॉर्म है जिसे मैं जेड का उपयोग करके कार्यान्वित करना चाहता हूं।जेड - एचटीएमएल आउटपुट

form 
    input(
     type="text" 
     size="16" 
     placeholder="Enter your keywords") 
    input(
     type="button" 
     value="Search") 

उत्पादन प्रदान की गई है के रूप में:

<form> 
     <input type="text" size="16" placeholder="Enter your keywords"> 
     <input type="button" value="Search"> 
</form> 

यह एकदम सही है, सिवाय इसके कि लाइन ब्रेक मेरी बटन और खोज बटन के बीच एक रिक्ति उत्पन्न कर रहा है। मुझे टेक्स्टबॉक्स और बटन के बीच कोई जगह चाहिए। मैं इस तरह से प्रस्तुत करना कोड की जरूरत है:

<form> 
     <input type="text" size="16" placeholder="Enter your keywords"><input type="button" value="Search"> 
</form> 

हालांकि मैं कोड है कि अपने HTML प्रपत्र में पढ़ा जा करने की आवश्यकता होगी बनाने के लिए इस परियोजना का उपयोग कर रहा है, और यह कर सकते हैं एक पूरे के रूप अपने प्रोजेक्ट से नहीं सरल निकालें सफेद स्थान ।

क्या कोई तरीका है कि मैं अपने फॉर्म को आउटपुट के रूप में आउटपुट कर सकता हूं, जबकि मेरे शेष दस्तावेज़ में सफेद रिक्ति और लाइन ब्रेकिंग को बनाए रखा गया है?

उत्तर

10

मैं एक ही बात के लिए देख रहा था और इस में आए: http://scalate.fusesource.org/documentation/jade-syntax.html

सादा पाठ के तहत: श्वेत रिक्ति को हटाने:

: > और <

मैं एक < एक > टैग के अंदर खाली स्थान के साथ कोई समस्या आ रहा था

a.external(href={"http://foo.bar/" + reference.dxLink.get}) 
    |CrossRef 

<a href="http://foo.bar/10.1002/rmv.439"> 
        CrossRef 
</a> 
0 में हुई

पंक्ति के अंत में जोड़ा जा रहा है <:

a.external(href={"http://foo.bar/" + reference.dxLink.get})< 
    |CrossRef 

<a href="http://foo.bar/10.1002/rmv.439">CrossRef</a> 
+1

यह कुछ टैग के लिए काम करता है, उदा। 'blockquote' और' a', जैसा कि आपके उदाहरण में है, लेकिन जेड v1.11.0 त्रुटियों का उत्पादन करता है और 'इनपुट' टैग के साथ प्रयास करते समय संकलित नहीं करेगा। एफडब्ल्यूआईडब्ल्यू, ऊपर fusource.org लिंक काम नहीं कर रहा है। दस्तावेज़ भी उपलब्ध है [यहां] (http://scalate.github.io/scalate/documentation/jade-syntax.html#Whitespace_Removal:__code__gt___code__and__code__lt___code_)। – matty

2

के परिणामस्वरूप अगर यह नोड जे एस के लिए जेड है आप force jade to remove or add whitespace with the 'pretty' paramater

var jade = require('./../') 
    , path = __dirname + '/whitespace.jade' 
    , str = require('fs').readFileSync(path, 'utf8') 
    , fn = jade.compile(str, { filename: path, pretty: true }); 

आप अपने प्रपत्र डाल सकता है कर सकते हैं एक अलग फ़ाइल में टेम्पलेट (उदा: myform.jade) और जब आप लोड करते हैं तो उस टेम्पलेट के लिए सुंदर पर सेट करें, या इस उद्देश्य के लिए एक सहायक बनाओ।

1

मुझे यह समस्या भी थी। locals.pretty विकास के तहत सच में सेट है क्योंकि मैं प्रस्तुत एचटीएमएल पढ़ना चाहता हूं। दो इनपुट के बीच की जगह शैली की समस्या का कारण बन जाएगी।

मेरे वर्तमान समाधान है कि दो आदानों के लिए कच्चे एचटीएमएल उपयोग करने के लिए है:

form 
    <input type="text" size="16" placeholder="Enter your keywords"><input type="button" value="Search"> 

यह एक छोटे से कोई भी-जेड पाठ घुलमिल लेकिन उन दोनों के बीच अतिरिक्त स्थान के बिना आदानों बना देता है।

+1

आप कच्चे कोड के बजाय किसी भी ब्राउज़र इंस्पेक्टर के साथ परिणामस्वरूप एचटीएमएल पढ़ सकते हैं। –

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