2011-09-28 8 views
9

मैं node.js के लिए नया हूं, और सर्वर-साइड पर टेम्पलेट्स प्रस्तुत करने और राउटर के रूप में एक्सप्रेस का उपयोग करने के लिए weld का उपयोग करने का प्रयास कर रहा हूं।node.js - एक्सप्रेस के साथ वेल्ड का उपयोग कर?

हालांकि Node.js के लिए उदाहरण सामग्री की सेवा नहीं दिखाने के लिए, और यह कैसे एक्सप्रेस के साथ काम करेगा पर फजी हूँ करता है:

var fs = require('fs'), 
jsdom = require('jsdom'); 

jsdom.env(
    './test.html', 
    ['./jquery.js', './weld.js'], 
    function(errors, window) { 
    var data = [{ name: 'hij1nx', title : 'code slayer' }, 
       { name: 'tmpvar', title : 'code pimp' }]; 
    window.weld(window.$('.contact')[0], data); 
    } 
); 

मदद या उदाहरण की सराहना की जाएगी।

+0

दिलचस्प, मैंने इसे पहले नहीं देखा है। मुझे यकीन नहीं है कि मैं इसके बारे में कैसा महसूस करता हूं .. – Chance

+0

हाँ, मैं इसे नोड के लिए काम करना चाहता हूं, क्योंकि यह विकेट के दृष्टिकोण के समान है, जिसे मुझे वास्तव में जावा ऐप्स के लिए पसंद आया। – 7zark7

+2

प्लेट्स (नोडजित्सु द्वारा भी) नया वेल्ड है: https://github.com/flatiron/plates – timoxley

उत्तर

3

मुझे लगता है कि ऐसा कुछ काम करेगा। हालांकि परीक्षण नहीं किया है।

var fs = require('fs'), 
    jsdom = require('jsdom'), 
    app = require('express').createServer(); 

app.get('/', function(req, res) { 

    jsdom.env('./test.html', ['./jquery.js', './weld.js'], function(errors, window) { 
     var data = [{ 
      name : 'hij1nx', 
      title : 'code slayer' 
     }, { 
      name : 'tmpvar', 
      title : 'code pimp' 
     }]; 
     window.weld(window.$('.contact')[0], data); 
     res.send(window.document.innerHTML); //after the welding part we just send the innerHTML 
     window.close(); // to prevent memory leaks of JSDOM 
    }); 

}); 
app.listen(3001); 
+0

धन्यवाद दोस्त, बहुत अच्छा काम करता है। सराहना और स्वीकार किया। हालांकि एक मामूली सवाल यह है कि [0] सूचकांक की आवश्यकता क्यों है? मुझे लगता है कि यह jQuery था, जिसे चयनकर्ताओं के लिए इंडेक्स की आवश्यकता नहीं है जो एक मान वापस कर देते हैं। – 7zark7

+0

मैं JQuery के साथ एक अनुभवी उपयोगकर्ता नहीं हूं और यह सुनिश्चित नहीं करता कि क्यों, लेकिन दोनों वर्ग चयनकर्ताओं और आईडी चयनकर्ताओं के लिए यह लौटाता है और सरणी करता है, भले ही वे एक हो। –