2016-05-24 18 views
8

नमस्ते मैं नोड जेएस के लिए अपेक्षाकृत नया हूं और आसपास देख रहा हूं लेकिन समाधान नहीं ढूंढ रहा हूं। मैंने जावास्क्रिप्ट फ़ाइल की आवश्यकता की जांच की है और ऐसा लगता है कि "readFileSync" के लिए कोई विधि नहीं है। शायद मेरे पास उचित आवश्यकता फ़ाइल नहीं है? मुझे इस फाइल को खोजने में मुश्किल हुई, हर जगह इसके बारे में बात की लेकिन अधिकांश लोगों ने यह नहीं पोस्ट किया कि इसे कहां प्राप्त किया जाए।readFileSync एक फ़ंक्शन नहीं है

मैंने नोड जेएस स्थापित किया है और requ.js फ़ाइल है। मेरे वर्तमान कोड इस तरह है:

fs = require(['require'], function (foo) { 
//foo is now loaded. 
}); 
console.log("\n *STARTING* \n"); 
// Get content from file 
var contents = fs.readFileSync("sliderImages", 'utf8'); 

मैं पहली बार हालांकि काम करने के लिए यह javacscript फ़ाइल की आवश्यकता होती है लोड करने के लिए लगता है की आवश्यकता होती है हो रही है पर एक सा था। मैं गाइड निम्नलिखित किया गया है और यही कारण है कि मैं इस त्रुटि मिलती है मुझे यकीन है कि नहीं कर रहा हूँ:

Uncaught TypeError: fs.readFileSync एक समारोह

मैं कई तय की कोशिश की है और यह एक यह पता लगाने नहीं कर पा रहे है। किसी भी मदद की बहुत सराहना की है। धन्यवाद।

+0

'fs' स्पष्ट रूप से नोड का" एफएस "नहीं है, अन्यथा 'readFileSync' विधि को अपरिभाषित नहीं किया जाएगा, तो आप अपनी आवश्यकता के साथ कुछ गलत कर रहे हैं? आप केवल 'var fs = requ (' fs ') ' – adeneo

+0

क्यों नहीं करेंगे नोड के साथ Requ.js का उपयोग न करें। नोड के पास कॉमनजेएस का उपयोग करके मॉड्यूल को संभालने का अपना तरीका है। जैसा कि एडेनो ने कहा, बस 'var fs = requ (' fs ') 'करें। Requ.js क्लाइंट-साइड पर मॉड्यूल लोडिंग के लिए है। –

+0

जब मैंने इसका उपयोग करने का प्रयास किया तो मुझे निम्न त्रुटि मिली: मॉड्यूल नाम "एफएस" अभी तक संदर्भ के लिए लोड नहीं किया गया है: _। उपयोग की आवश्यकता है ([])। तो मैंने एक समाधान की तलाश शुरू कर दी। – L1ghtk3ira

उत्तर

6

Node.js Require.js का उपयोग नहीं करता है। Requ.js बनाया गया था ताकि आप क्लाइंट-साइड (आपके ब्राउज़र में) पर एसिंक्रोनस मॉड्यूल लोड हो सकें।

Node.js CommonJS शैली मॉड्यूल का उपयोग करता है। CommonJS का उपयोग कर अपने कोड इस तरह दिखेगा:

var fs = require('fs'); 
console.log("\n *STARTING* \n"); 
var contents = fs.readFileSync("sliderImages", "utf8"); 

हम आपको बुलाया main.js आप तो (सुनिश्चित करें कि आप फ़ाइल के रूप में एक ही निर्देशिका में कर रहे हैं) आपके कंसोल में इस आदेश में प्रवेश करेंगे एक फ़ाइल में इस बचाया मान हैं:

node main.js 

इस कोड ब्राउज़र में नहीं चलेंगे। Node.js सर्वर पर चलता है। यदि आप ब्राउज़र पक्ष पर एक JSON फ़ाइल लोड करना चाहते हैं तो आपको AJAX का उपयोग करके इसे लोड करना होगा। There are numerous resources आपको यह दिखाने के लिए उपलब्ध है कि यह कैसे करें। ध्यान रखें कि आपको या तो सर्वर से अपना पृष्ठ चलाया जाना चाहिए या फ़ाइल सिस्टम से फ़ाइलों में लोड करने के लिए एक विशेष ध्वज सक्षम होना चाहिए।

+1

धन्यवाद, मैं थोड़ा निश्चित नहीं था कि node.js का उपयोग कैसे करें, जिसने बहुत कुछ साफ़ किया, धन्यवाद! – L1ghtk3ira

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