2012-04-17 18 views
15

मैं एक बहुत ही बुनियादी समस्या में भाग गया लेकिन मुझे इसका जवाब नहीं मिल रहा है। मैं node.js साथ काम कर रहा हूँ, express और मैं सिर्फ इस तरह दृश्य में एक स्थानीय चर पारित करने के लिए कोशिश कर रहा हूँ:एक्सप्रेस + जेड: स्थानीय चर दृश्य में उपलब्ध नहीं है

app.get('/', function(req, res){ 
    res.render("index", {locals: { 
    title: "Blog", 
    } 
    }); 
}); 

मेरे सूचकांक दृश्य भी उतने ही सरल है:

h1= title 

लेकिन किसी कारण से, मैं इस त्रुटि को प्राप्त करना जारी रखें जैसे कि स्थानीय चर कभी पारित नहीं होता है:

500 ReferenceError: /home/spartan/Node_Projects/test/views/index.jade:1 > 1| h1= title 2| title is not defined 
> 1| h1= title 
    2| title is not defined 

मुझे नहीं पता कि मैं क्या गलत कर रहा हूं!

  • एक्सप्रेस: ​​3.0.0alpha1
  • Node.js: 0.6.14
  • जेड: यहाँ संस्करणों मैं उपयोग कर रहा हूँ रहे हैं 0.24.0

किसी कृपया मदद तो मैं वास्तव में यह कर सकते हैं नोड + एक्सप्रेस सीखने के लिए आगे बढ़ो!

उत्तर

28

आप locals बिना चर पास करना चाहिए। यह शायद एक्सप्रेस 3.0.0

res.render("index", {title: "Blog"}); 
+1

आपको बहुत बहुत धन्यवाद, यह था! मैं बस एक पुराने ट्यूटोरियल का पालन कर रहा था और मुझे पता नहीं था कि क्या गलत था .. – aeyang

4

एच 1 = शीर्षक स्थानीय रूप से इसका मूल्यांकन करने की कोशिश करता है, आपके द्वारा भेजा गया शीर्षक और वह एक अलग है। यह समझने के लिए अंतर देखेंगे:

- var title = 'my title' // - allows writing code 
h1 = title 

एक का उपयोग करना चाहिए है:

h1 #{title} 
+0

मुझे यह बताने के लिए धन्यवाद कि, मैं अब उस अंतर को समझता हूं। मुझे इतना यकीन था कि यह था, लेकिन दुर्भाग्यवश, जब मैंने अपना विचार सिर्फ 'h1 # {title}' में बदल दिया, तो उसने मुझे एक ही त्रुटि संदेश दिया ... कोई विचार? – aeyang

1

Here is a response है कि मैं एक smiliar सवाल (+ लेआउट के साथ सौदा) करने के लिए कुछ घंटे पहले बनाया में नया है। यह दिखाता है कि प्रतिपादन करते समय डेटा कैसे पास किया जाए। (एक्सप्रेस 3.0.0 अनुपालन)

+0

धन्यवाद, आपकी प्रतिक्रिया का जवाब वह था जिसे मैं ढूंढ रहा था। – aeyang

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