2016-08-28 9 views
85

अद्यतन: फरवरी 2017: उपयोग एनजी इजेक्टकोणीय CLI जहां webpack.config.js फ़ाइल है - नई 2017-फरवरी: एनजी बेदखल

अद्यतन: नवम्बर 2016: कोणीय CLI अब केवल webpack का उपयोग करें। आपको केवल सामान्य रूप से npm install -g कोणीय-क्ली के साथ स्थापित करने की आवश्यकता है। "हमने बीटा.10 और बीटा.14 के बीच बिल्ड सिस्टम को सिस्टमजेएस से वेबपैक में बदल दिया है।", लेकिन असल में मैं केवल एफआईआरएस संरचना और फ़ोल्डरों के लिए कोणीय-क्ली का उपयोग करता हूं और फिर मैं वेबपैक कॉन्फ़िगरेशन मैन्युअल रूप से

I ' इस के साथ कोणीय CLI स्थापित कर दिया है:

npm install -g [email protected] 

जब मैं angular1 और वेब पैक के साथ काम किया, मैं संशोधित करने के लिए "webpack.config.js" का इस्तेमाल किया फ़ाइल सब काम और प्लग इन पर अमल करने के लिए, लेकिन मैं पर नहीं दिख रहा है यह प्रोजेक्ट कोणीय-क्ली के साथ बनाया गया है जो यह काम करता है। यह जादू है?

मैं देख रहा हूँ Webpack काम कर रहा है जब मैं कार्य करें:

ng serve 

"Version: webpack 2.1.0-beta.18" 

लेकिन मैं जिस तरह से समझ में नहीं आता कि कोणीय CLI config काम करता है ...

+0

यह में में बनाया गया है कोणीय 2 क्ली जोड़ता है । कोई जादू बस सरलीकृत नहीं है। –

+2

धन्यवाद @MrJSingh, लेकिन अभी तक एक विन्यास फाइल है? या बस कोणीय-cli.json के साथ काम करता है? मुझे और कॉन्फ़िगरेशन प्लगइन्स की आवश्यकता नहीं है? – stackdave

+0

यह एटी है: node_modules \ @ngtools – bharatpatel

उत्तर

126

कोणीय CLI से webpack.config.js बाहर फेंकने के लिए एक अच्छा तरीका नहीं है। बस चलाने:

$ ng eject 

यह अपनी परियोजना के रूट फ़ोल्डर में webpack.config.js उत्पन्न होगा, और आप इसे जिस तरह से आप चाहते हैं कॉन्फ़िगर करने के लिए स्वतंत्र हैं। इस के नकारात्मक पक्ष यह है कि निर्माण/शुरू अपने package.json में स्क्रिप्ट नए आदेश से बदल दिया जाएगा और

$ ng serve 

के बजाय आप की तरह

$ npm run build & npm run start 

कुछ करने के लिए होता है इस विधि से काम करना चाहिए कोणीय CLI के सभी हाल के संस्करणों में (मैं व्यक्तिगत रूप से, कुछ करने की कोशिश की सबसे पुराना है 1.0.0-beta.21, और नवीनतम 1.0.0-beta.32.3 के साथ)

+1

केवल निराशा यह है कि यह केवल देव पर्यावरण कॉन्फ़िगरेशन को निकाल देती है। एक तर्क है इसके बजाय उत्पादन कॉन्फ़िगरेशन का उपयोग करने के लिए एनजी एक्जेक्ट में जोड़ सकते हैं लेकिन यह वर्तमान में काम नहीं करता है https://github.com/angular/angular-cli/issues/5433 – jtsnr

+1

@ एंटोन निकिफोरोव क्या एनजी एक्जेक्ट कमांड को वापस करना संभव है? – karina

+0

@bebebe https://github.com/angular/angular-cli/issues/4907 मैंने यह सुनिश्चित करने के लिए कहा है। – Kunepro

8

आप angular-cli/addon/ng2/models में config टेम्पलेट हैक कर सकते हैं। अभी तक वेबपैक कॉन्फ़िगरेशन को संशोधित करने का कोई आधिकारिक तरीका नहीं है।

वहाँ एक बंद "अभ्यस्त ठीक" GitHub पर इस बारे में मुद्दा है: https://github.com/angular/angular-cli/issues/1656

+1

अंत में मैं इस कंकाल का उपयोग करता हूं, कोणीय-क्ली वेबपैक के साथ वास्तविक काम के लिए तैयार नहीं है, बहुत कुछ है समस्याओं का मैं इसका उपयोग करने की सलाह देता हूं: https://github.com/webpack/webpack-dev-server – stackdave

+3

मुझे दुख है, यह मुद्दा "लागू नहीं होगा" के रूप में बंद है। :-( – monnef

+1

http://npmjs.com/~ngtools भी हैं जहां आप वेबपैक प्राप्त कर सकते हैं जो सीएलआई स्टैंडअलोन चलाता है। Https://youtu.be/uBRK6cTr4Vk?t=7m57s – Mikeumus

31

इस issue के अनुसार, यह एक डिजाइन निर्णय उन सीखने की अवस्था को कम करने के Webpack विन्यास को संशोधित करने की अनुमति नहीं करने के लिए किया गया था।

वेबपैक पर उपयोगी कॉन्फ़िगरेशन की संख्या को ध्यान में रखते हुए, यह एक बड़ी कमी है।

मैं उत्पादन अनुप्रयोगों के लिए angular-cli का उपयोग करने की अनुशंसा नहीं करता, क्योंकि इसकी अत्यधिक राय है।

+0

देखें इसे किसी को दर्ज करने की सलाह नहीं है ब्लैकबॉक्स जब तक आप आर्किटेक्चर के हर प्रवाह को समझ नहीं लेते हैं, तो यह बहुत महंगा हो सकता है अगर कुछ समर्थित नहीं हैं या परियोजना के विकास के बीच में अनुकूलित नहीं किया जा सकता है। –

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