दिलचस्प पोस्ट
JTextField में मूल्य बदलें श्रोता जेएसडीपी में जेडीपी पेज में एमडीसी और डीएओ पैटर्न का उपयोग करते हुए JDBC ResultSet सेट करें फ़्लेक्सबॉक्स बटन या फ़ील्ड्स तत्वों पर काम नहीं कर रहा है XML पार्सिंग के लिए सर्वश्रेष्ठ नोड मॉड्यूल आईओएस – कई तर्कों और बाद में डेला के साथ प्रदर्शन करने वाले को कार्यान्वित कैसे करें? एक क्वेरी की कुंजी में MongoDB वाइल्डकार्ड Hadoop "अपने मंच के लिए मूल-हदीस पुस्तकालय लोड करने में असमर्थ" चेतावनी कैसे जावा इंटरफेस कई विरासत अनुकरण करते हैं? आईडीईए: जवाक: स्रोत रिलीज 1.7 को लक्ष्य रिलीज 1.7 की आवश्यकता है स्क्रॉल किए जाने वाले डिवेल में फ़ॉज़न तालिका हैडर मैं एक स्ट्रीम की सामग्री को दूसरे में कैसे कॉपी करूँ? मैं कैसे ठीक कर सकता हूं "प्रकार सूची की अभिव्यक्ति को अनियंत्रित रूपांतरण की आवश्यकता है … '? रेल 3 एक मॉडल के बिना कस्टम एसक्यूएल क्वेरी निष्पादित करें यह C ++ स्निपेट संकलित क्यों करता है (गैर-शून्य फ़ंक्शन किसी मान को वापस नहीं करता) फ्लेक्सबॉक्स (या अन्य सीएसएस) के साथ एक चिनाई वाली ग्रिड बनाएं

वेबपैक के साथ लोकेल लोड करने से पल। जेएस को कैसे रोकें?

नमस्कार वहाँ वैसे भी आप पल। जेएस को सभी लोकेल लोड करने से रोक सकते हैं (मुझे अंग्रेजी की ज़रूरत है) जब आपकी वेबपैक का इस्तेमाल होता है? मैं इस स्रोत को देख रहा हूं ऐसा लगता है कि यदि मॉड्यूल को परिभाषित किया गया है जो इसे वेबपैक के लिए है तो यह हमेशा हर जगह की आवश्यकता होती है () मुझे पूरा यकीन है कि यह ठीक करने का अनुरोध खींचने की ज़रूरत है लेकिन वैसे भी हम इसे वेबपैक कॉन्फ़िग के साथ ठीक कर सकते हैं।

यहां अपने वेबपैक कॉन्फ़िग को लोड करने के लिए पटकथाएं हैं I

resolve: { alias: { moment: path.join(__dirname, "src/lib/bower/moment/moment.js") }, }, 

फिर कहीं भी मुझे इसकी ज़रूरत है, मुझे बस 'पल' की आवश्यकता होती है लेकिन यह मेरी बंडल में अनावश्यक भाषा फ़ाइलों की 250kb को जोड़ती है इसके अलावा मैं पलएज और गुलप के कगार संस्करण का उपयोग कर रहा हूं।

इसके अलावा, अगर यह एक वेबपैक कॉन्फ़िग द्वारा तय नहीं किया जा सकता है, तो यह फ़ंक्शन के लिए एक लिंक है जहां यह स्थानीय लोगों को लोड करता है https://github.com/moment/moment/blob/develop/moment.js#L760-L772 मैं जोड़ने का प्रयास किया "एंड-मॉड्यूल.एक्सपोर्ट्स.लोडलोकैल्स" अगर इ बयान पर, लेकिन मुझे लगता है कि वेबपैक किसी तरह काम नहीं करता है, जहां यह काम करेगा, कोई फर्क नहीं पड़ता कि मुझे कोई फर्क नहीं पड़ता कि यह अब एक रीजेक्स का उपयोग करता है, इसलिए मैं वास्तव में नहीं जानता कि आप यहां तक ​​कि कैसे इसे तय करने के बारे में जाना किसी भी मदद के लिए वैसे भी धन्यवाद

वेब के समाधान से एकत्रित समाधान "वेबपैक के साथ लोकेल लोड करने से पल। जेएस को कैसे रोकें?"

कोड की require('./locale/' + name) हर फाइल को locale डीर में इस्तेमाल कर सकती है तो वेबपैक में प्रत्येक फ़ाइल को आपके बंडल में मॉड्यूल के रूप में शामिल किया गया है यह नहीं पता है कि आप किस भाषा का उपयोग कर रहे हैं

दो प्लग-इन जो ContextReplacementPlugin और अधिक जानकारी देने के लिए उपयोगी हैं जो आपके मॉड्यूल को आपके बंडल में शामिल करने के लिए उपयुक्त हैं: ContextReplacementPlugin और IgnorePlugin

require('./locale/' + name) को एक संदर्भ कहा जाता है (एक आवश्यकता जिसमें एक अभिव्यक्ति है) वेबपैक इस कोड के टुकड़े से कुछ जानकारी का अनुमान लगाता है: एक निर्देशिका और एक नियमित अभिव्यक्ति यहां: directory = ".../moment/locale" regular expression = /^.*$/ इसलिए डिफ़ॉल्ट रूप से हर फाइल में locale निर्देशिका शामिल है।

ContextReplacementPlugin अनुमानित जानकारी को ओवरराइड करने की अनुमति देता है, अर्थात् एक नया नियमित अभिव्यक्ति प्रदान करने के लिए (जो भाषाओं को आप शामिल करना चाहते हैं) का चयन करें।

एक अन्य तरीका IgnorePlugin साथ की आवश्यकता को अनदेखा करना है

यहाँ एक उदाहरण है:

 var webpack = require("webpack"); module.exports = { // ... plugins: [ new webpack.ContextReplacementPlugin(/moment[\/\\]locale$/, /de|fr|hu/) // new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/) ] }; 

हमारी परियोजना में, मैं इस तरह क्षण शामिल हैं: import moment from 'moment/src/moment'; और ऐसा लगता है कि चाल करना है हमारा पल का उपयोग बहुत सरल है, इसलिए मुझे यकीन नहीं है कि एसडीके के साथ कोई असंगतता नहीं होगी। मुझे लगता है कि यह काम करता है क्योंकि वेबपैक नहीं जानता है कि कैसे लोकेल फ़ाइलों को स्थिर रूप से ढूंढना है, इसलिए आपको एक चेतावनी मिलती है (इस moment/src/lib/locale/locale एक रिक्त फ़ोल्डर moment/src/lib/locale/locale जोड़कर छुपाना आसान है) लेकिन कोई भी स्थान शामिल नहीं है।

एडम McCrmick के जवाब के आधार पर, आप करीबी थे, अपने उपनाम को इसमें बदलें:

 resolve: { alias: { moment: 'moment/src/moment' }, }, 

उचित मॉड्यूलर moment लाइब्रेरी कुछ समय में संस्करण 3 के साथ आएगा, इसलिए वर्तमान में मैं बिना --eject--eject का उपयोग कर रहा --eject मैं अभी https://github.com/ksloan/moment-mini जैसे import * as moment from 'moment-mini'; का उपयोग कर समाप्त कर दिया है import * as moment from 'moment-mini';

webpack2 और हाल के संस्करणों के साथ आप यह कर सकते हैं:

 import {fn as moment} from 'moment' 

और फिर webpack.config.js आप करते हैं:

 resolve: { packageMains: ['jsnext:main', 'main'] }