यहां स्थिति है ... इसलिए मैंने एक नोड.जेएस मॉड्यूल बनाया है जो कुछ नोड.जेएस टेम्पलेट इंजन, Shift.js पर इंटरफ़ेस के रूप में कार्य करता है। यह किसी अन्य Node.js मॉड्यूल के अंदर शामिल है, Design.io (यह निर्दिष्ट है Design.io's package.json dependencies
ब्लॉक)। Design.io परिवर्तनों के लिए फाइलें देखता है।"त्रुटि: मॉड्यूल 'कम नहीं मिला' 'Node.js मॉड्यूल लोडिंग वरीयता/ऑर्डर/कैश?
फिर आप एक ऐप और require('design.io')
बनाते हैं। आप अपनी परियोजना में कम, स्टाइलस भी कहते हैं, कहते हैं।
इस तरह, जब आप एक .less
या .styl
फ़ाइल सहेजें, तरीकों की एक श्रृंखला कहा जाता है:
require("design.io")
फाइल सिस्टम ईवेंट की सूचना दी जाती है। Design.io फिरrequire('shift').render(string, extension, callback)
पर कॉल करता है। Shift.js तबrequire(moduleFor(extension)) # require("less")
पर कॉल करता है। स्ट्रिंग संकलित है।
मेरी ऐप्लिकेशन में (वर्तमान कार्यशील निर्देशिका) मैं कम और लेखनी स्थापित किया है:
npm install less stylus
समस्या मैं आ रही है चरण में, 3 जो Shift.js के भीतर से कहा जाता है मॉड्यूल, मुझे इस तरह की त्रुटियां मिलती हैं:
Error: Cannot find module 'less'
at Function._resolveFilename (module.js:334:11)
at Function._load (module.js:279:25)
at Module.require (module.js:357:17)
at require (module.js:368:17)
at Less.engine (/Users/viatropos/Documents/git/plugins/design.io/node_modules/shift/lib/shift/less.js:6:14)
at Less.render (/Users/viatropos/Documents/git/plugins/design.io/node_modules/shift/lib/shift/less.js:18:21)
at /Users/viatropos/Documents/git/plugins/design.io/node_modules/shift/lib/shift.js:69:23
at /Users/viatropos/Documents/git/plugins/design.io/node_modules/async/lib/async.js:118:13
at Object.forEachSeries (/Users/viatropos/Documents/git/plugins/design.io/node_modules/async/lib/async.js:134:9)
at Object.render (/Users/viatropos/Documents/git/plugins/design.io/node_modules/shift/lib/shift.js:78:31)
मेरा प्रश्न है, यह क्यों हो रहा है? मैंने सोचा था कि जब तक वे कहीं स्थापित किए गए थे, तब तक आप गतिशील रूप से मॉड्यूल से पुस्तकालयों की आवश्यकता कर सकते थे ... मुझे क्या याद आ रही है?
लक्ष्य यह होगा कि Shift.js जैसे पुस्तकालयों को package.json
में प्रत्येक एकल निर्भरता को परिभाषित नहीं करना होगा ... "टेम्पलेट इंजन के लिए इंटरफ़ेस" लाइब्रेरी के लिए, उसमें बहुत अधिक निर्भरताओं की आवश्यकता होगी कि ऐप शायद कभी नहीं होगा का उपयोग करते हुए।
सहायता के लिए धन्यवाद, उम्मीद है कि कुछ हद तक स्पष्ट था।
मुझे लगता है कि यह एक से ठीक कर सकते ... मैं एक आदेश है 'design.io' मैं फोन, भाग गया जो' आवश्यकता है ('../ lib/design.io/process.js') 'जो पूरे वॉचर प्रक्रिया शुरू करता है।यदि मैं इसे 'आवश्यकता (' design.io/lib/design.io/process.js ') में बदलता हूं, तो सब ठीक से लोड हो रहा है। अजीब, बी/सी 'requ.main.paths' दोनों मामलों में समान हैं। –