2013-12-07 10 views
15
module.js:340 
    throw err; 
     ^
Error: Cannot find module './models/todo' 
    at Function.Module._resolveFilename (module.js:338:15) 
    at Function.Module._load (module.js:280:25) 
    at Module.require (module.js:364:17) 
    at require (module.js:380:17) 
    at Object.<anonymous> (C:\Users\Basel\Desktop\Todo List\routes\api.js:1:74) 
    at Module._compile (module.js:456:26) 
    at Object.Module._extensions..js (module.js:474:10) 
    at Module.load (module.js:356:32) 
    at Function.Module._load (module.js:312:12) 
    at Module.require (module.js:364:17) 

C:\Users\Basel\Desktop\Todo List> 

में मॉड्यूल नहीं मिल रहा है यह एप्लिकेशन क्यों शुरू नहीं होगा? मैंने पहले से ही एक वैश्विक एनपीएम इंस्टॉल करने की कोशिश की है।नोडज

+0

'मॉडल' फ़ोल्डर कहां है? – matth

+1

आपको अधिक जानकारी प्रदान करने की आवश्यकता है। क्या आपके पास 'मॉडल' निर्देशिका में 'todo.js' फ़ाइल है जो' आवश्यकता 'को कॉल करने वाली फ़ाइल के समान स्तर पर है? – JohnnyHK

+0

हां। मूल रूप से मैंने इसे करने के लिए बुलाया। मैंने इसे दोबारा दोहराया और शीर्षक को todos.js में बदल दिया। इसके बाद मैंने अपने मार्गों में पथ बदल दिया ताकि यह परिवर्तन (./models/todos ') को प्रतिबिंबित करे, लेकिन यह भी काम नहीं करता था। – user2993058

उत्तर

29

./models/todo में, अवधि इंगित करता है कि नोड जो \Todo List\routes\models\todo.js के लिए लगेगा ही फ़ोल्डर api.js में है, में दिखेगा। यह एप्लिकेशन की जड़ से शुरू नहीं होता है। इस आवश्यकता के लिए, आप के रूप में अच्छी एक स्तर ऊपर कूद करने के लिए, और निर्दिष्ट एप्लिकेशन पथ दो अवधियों हमें करना होगा:

var todo = require('../app/models/todo'); 
+0

मेरे मामले में नोड पार्स ../ क्योंकि यह var todo = आवश्यकता है ('../ app/models/todo'); तो आउटपुट होगा ../app/models/todo माता-पिता/ऐप/मॉडल/todo नहीं! –

14

हो सकता है आप प्रणाली मान सेट नहीं किया: NODE_PATH; यह आपके वैश्विक मॉड्यूल स्थान को इंगित करना चाहिए; लिनक्स में

: export NODE_PATH=/usr/local/lib/node_modules/ मेरे लिए अच्छा काम करता है;

-1

मेरे मामले में, मेरे द्वारा आवश्यक विवरण में दिया गया फ़ाइल नाम गलत था। मेरे पास post.js नामक मेरी मॉडल फ़ाइल थी और मैं आवश्यकता ('./ मॉडल/पोस्ट') का उपयोग कर रहा था। मैंने इसे बदलने के बाद काम किया ('.models/posts')

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