2016-01-19 19 views
28

में स्थिर संपत्तियों की सेवा करना मैं अपने प्रोजेक्ट के रूट फ़ोल्डर से वेबपैक-देव-सर्वर चलाता हूं। मुझे लगता है कि CopyWebPackPlugin से कॉपी किया जाता है /src/संपत्ति में संपत्ति फ़ोल्डर है:वेबपैक देव सर्वर

new CopyWebpackPlugin([ { from: 'src/assets', to: 'assets' } ]) 

अगर मैं अंदर संपत्ति फ़ोल्डर logo.png डाल तो webpack-देव-सर्वर मैं नहीं कर सकता चलाने के बाद http://localhost/assets/logo.png फ़ाइल एक्सेस करें, लेकिन http://localhost/src/assets/logo.png फ़ाइल तक पहुंच सकते हैं। हालांकि अगर मैं उत्पादन मोड में चला जाता हूं तो स्थिति उल्टा हो जाती है।

http://localhost/assets/logo.png फ़ाइल को विकास मोड में सुलभ बनाने के लिए वेबपैक सर्वर को कॉन्फ़िगर कैसे करें?

उत्तर

11

ब्राउज़र से लोड करते समय आप वेबपैक को एक अलग पथ का उपयोग करने के लिए बता सकते हैं।

output अपनी वेबपैक कॉन्फ़िगरेशन फ़ाइल के अनुभाग में publicPath फ़ील्ड जोड़ें जो आपके assets फ़ोल्डर पर इंगित करता है।

output: { 
    // your stuff 
    publicPath: '/assets/' 
} 
+1

क्या कोई भी पूर्ण कार्यशील वेबपैक.config.js पोस्ट कर सकता है? और कॉपी-वेबपैक-प्लगइन का संस्करण वे उपयोग कर रहे हैं? –

+0

यह मुझे पागल कर रहा था! इस उत्तर के लिए बहुत बहुत धन्यवाद! –

+0

@TonyGutierrez क्या आपको अभी भी एक उदाहरण की आवश्यकता है? मेरा साझा करने के लिए खुश हूँ। –

24

मैं जोड़ना होगा कि यह मेरे लिए विपरीत था webpack.config.js। मेरे मूल रूप से मेरी छवियों की रूट पर मौजूद public फ़ोल्डर में मेरी छवियां और .obj/.mtl फ़ाइलें थीं। मैंने उन्हें फ़ोल्डर में बनाए गए assets फ़ोल्डर में स्थानांतरित कर दिया।

एक npm install --save-dev copy-webpack-plugin प्रदर्शन और

new CopyWebpackPlugin([ { from: 'src/assets', to: 'assets' } ]) 

करने के लिए webpack.common.js फ़ाइल मेरी समस्या तय जोड़ने।

+4

धन्यवाद, मुझे जो चाहिए वह मुझे दिया। मेरे मामले में, 'publicPath' को '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' यह इसे हल किया। – webnoob

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