2015-04-28 12 views
7

क्या आप लोडर के एक अलग सेट के साथ द्वितीयक प्रविष्टि लोड कर सकते हैं?वेबपैक विभिन्न जेएस प्रविष्टियों के लिए अलग-अलग लोडर

उदाहरण के लिए, मैं ऑफलाइन कैशिंग के लिए एक सेवा कर्मचारी बनाने की कोशिश कर रहा हूं। मैंने उस फ़ोल्डर को बाहर रखा है जिसमें सेवा कार्यकर्ता शामिल है और इसे दूसरे पर शामिल किया गया है। सेवा-कार्यकर्ता.जेएस पर कोई कॉल नहीं है (यह केवल स्थिर index.html में लोड हो गया है)। सेवा-कार्यकर्ता प्रविष्टि बिंदु केवल बेबेल के माध्यम से जाने के बजाय प्रतिक्रिया और गर्म लोडर उठा रहा है। मेरी कॉन्फ़िगरेशन के मुख्य भाग यहां दिए गए हैं।

entry: { 
    app: "app.js", 
    'service-worker': 'persistence/service-worker.js' 
}, 
module: { 
    loaders:[{ 
     test: /\.js|\.jsx/, 
     loaders: ["react-hot", "jsx?harmony", "babel"], 
     exclude: /persistence/ 
    }, { 
     test: /service\-worker\.js/, 
     loaders: ["babel"], 
     include: /persistence/ 
    }] 
+0

मुझे नहीं पता कि ऐसा कुछ क्यों काम नहीं कर सका। क्या आपको सेटअप के साथ कुछ विशेष समस्याएं हैं? –

+0

सेवा-कार्यकर्ता प्रविष्टि सभी javsscript संकुल के साथ बनाता है और इसमें दृढ़ता फ़ोल्डर में केवल 1 फ़ाइल शामिल नहीं है। – puppybits

+0

शायद सबसे सुरक्षित शर्त आपके सेवा कार्यकर्ता के लिए एक अलग कॉन्फ़िगरेशन को परिभाषित करना है। यह मेरे लिए सबसे साफ समाधान की तरह प्रतीत होता है। –

उत्तर

0

मैं फ़ाइल लोडर (preprocess करने के लिए कोलाहल-लोडर js फाइलों के साथ) का उपयोग करने पर बस गए। यह हॉट-लोडर के साथ-साथ मेरे उत्पादन डॉकर/नोड पर्यावरण में भी काम करता है।

loaders: { 
    { 
    test: /\.(js|jsx)$/, 
    include: [/src/,/bower_components/], 
    exclude: [/persistence/], 
    loader: 'jsx?harmony!babel' 
    }, { 
    test: /\.js$/, 
    include: [/persistence/], 
    loader: 'file?name=[name].[ext]!babel' 
    }, 
    ... 
}, 

इस config साइट के रूट में सामान्य जे एस फ़ाइलें और अलग प्रतियां सेवा कार्यकर्ता फ़ाइलों भर से फ़ोल्डर शामिल नहीं है।

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