2016-05-17 10 views
5

से फाइलों के साथ webpack और कोलाहल का उपयोग करते हुए मैं एक परियोजना इस तरह की स्थापना की है और मैं file-b.js से file-a.js की आवश्यकता के लिए कोशिश कर रहा हूँ। जब तक मैं babel-preset-es2015 6.6.0 के साथ babel-loader 6.2.4 जोड़ामाता पिता परियोजना निर्देशिका

project-name/ 
    node_modules/ 
    src/ 
    file-a.js 
    tools/ 
    tool-name/ 
     node_modules/ 
     src/ 
     file-b.js 
     webpack.config.js 
     package.json 
    package.json 

मेरे webpack 1.13.0 विन्यास काम कर रहा था। तब मुझे त्रुटि संदेश मिलना शुरू हो गया।

ERROR in /home/dan/dev/dan/project-name/src/file-a.js Module build failed: Error: Couldn't find preset "es2015" relative to directory "/home/dan/dev/dan/project-name/src"

अब मैं एक कूबड़ है कि यह हो रहा है, क्योंकि यह ऊपरी package.json में babel-preset-es2015 की तलाश में है। मैं इस त्रुटि को उस स्तर पर स्थापित करके दूर कर सकता हूं, लेकिन फिर मुझे babel मॉड्यूल के बारे में एक समान संदेश मिलता है।

मैंने सभी प्रकार की चीजों की कोशिश की है, ऊपरी src निर्देशिका को आंतरिक परियोजना में सिम्लिंक किया है, resolve.root और resolve.alias का उपयोग किया गया है ताकि नेस्टेड पथ के बिना फ़ोल्डर को मैन्युअल रूप से हल और हल किया जा सके। context प्रयुक्त बाहरी फ़ोल्डर के रूप में परियोजना जड़ स्थापित करने के लिए, लेकिन यह अभी भी गलत node_modules उठाया।

मैं कैसे सही node_modules फ़ोल्डर का उपयोग करने के लिए मजबूर कर सकते हैं webpack?

उत्तर

1

डिफ़ॉल्ट वेबपैक ./node_modules, ../node_modules, और ../../node_modules में दिखता है। moduleDirectoriesin webpack's documentation

पर

module.exports = { 
    // ... 
    resolve: { 
    modulesDirectories: [path.join(__dirname, 'node_modules')] 
    } 
} 

अधिक विवरण:

केवल एक विशिष्ट निर्देशिका का उपयोग करने के लिए इसे बाध्य करने के लिए, आप resolve अनुभाग में मॉड्यूल modulesDirectories संपत्ति के लिए एक पूर्ण पथ सेट कर सकते

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