मेरा मानना है कि यह सबसे साफ तरीका है जिसे मैंने देखा है।
हम अनिवार्य रूप से आयनिक बिल्ड स्क्रिप्ट के प्रति भाग को ओवरराइड करने जा रहे हैं। उन्होंने इसे प्रोत्साहित करने और इसे सरल बनाने के लिए बिल्ड स्क्रिप्ट बनाई है।
आप यह मानते हुए पहले से ही स्थापित करने के लिए जो कुछ भी आप की जरूरत पुस्तकालय NPM उपयोग किया है:
npm install chart.js --save
पर (जो परियोजना के रूट में node_packages फ़ोल्डर में chart.js पुस्तकालय स्थापित करता है)
देखो /node_modules/@ionic/app-scripts/config/copy.config.js। यही वह है जिसे हम ओवरराइड कर रहे हैं, इसलिए इसकी सामग्री को /config/copy.config.js पर फ़ाइल में कॉपी करें (आपको/config फ़ोल्डर बनाना होगा)।
module.exports = {
include: [
{
src: '{{SRC}}/assets/',
dest: '{{WWW}}/assets/'
},
{
src: '{{SRC}}/index.html',
dest: '{{WWW}}/index.html'
},
{
src: '{{SRC}}/manifest.json',
dest: '{{WWW}}/manifest.json'
},
{
src: '{{SRC}}/service-worker.js',
dest: '{{WWW}}/service-worker.js'
},
{
src: 'node_modules/ionic-angular/polyfills/polyfills.js',
dest: '{{BUILD}}/polyfills.js'
},
{
src: 'node_modules/ionicons/dist/fonts/',
dest: '{{WWW}}/assets/fonts/'
},
{
src: './node_modules/chart.js/dist/Chart.bundle.min.js',
dest: '{{BUILD}}/Chart.bundle.min.js'
},
]
};
अंतिम अनुभाग एक हम पर कहा, कहीं न कहीं है कि वास्तव में निर्माण में खींच लिया जाएगा करने के लिए chart.js फाइल कॉपी किया गया।
"config": {
"ionic_copy": "./config/copy.config.js"
},
अब जब आप का निर्माण, फ़ाइल:
हमारी स्क्रिप्ट प्राप्त करने के लिए इस्तेमाल किया जा, package.json इसके बारे में बताया जा रहा है, तो अपने /package.json फाइल करने के लिए इस "config" खंड जोड़ने की जरूरत है प्रतिलिपि बनाई जाएगी, और अधिक जोड़ने के लिए, पहले किए जाने के बाद यह स्पष्ट रूप से आसान है। आयनिक बिल्ड प्रक्रिया के अन्य भाग भी हैं जिन्हें आप ओवरराइड कर सकते हैं, यह देखने लायक है।
https://ionicframework.com/docs/v2/resources/app-scripts/
अब आप उस में आसानी से कॉल कर सकते हैं, एक ही विकल्प index.html के अंदर है:
<script src="build/Chart.bundle.min.js"></script>
लाभ कर रहे हैं, यदि आप एक मॉड्यूल अद्यतन को स्थापित, बदल फाइलों में अपडेट कर दिया जाएगा आपका निर्माण, और साथ ही, सब कुछ आसानी से वीसीएस के साथ काम करता है और नए वातावरण स्थापित करता है, क्योंकि निर्भरता एनपीएम द्वारा संभाली जाती है, और हमारा स्क्रिप्ट विस्तार अन्य सभी का ख्याल रखता है।:-)
आशा है कि मदद करता है! :-)
समाधान के लिए धन्यवाद। यह काम किया, तरह। हालांकि, चूंकि मैंने पैकेज.जेसन में "ionic_copy" जोड़ा, इसलिए मेरी आयनिक 2 परियोजना की लाइव रीलोड सुविधा काम करना बंद कर दिया। मान लीजिए कि मैंने अपनी प्रोजेक्ट निर्देशिका पर एक .ts फ़ाइल को संशोधित किया है, और इसे सहेजा है, लाइव रीलोड को स्वचालित रूप से कार्यरत प्रोजेक्ट को रीफ्रेश करना चाहिए लेकिन अब यह नहीं है। कोई सुझाव? – filipvkovic
उस समाधान के लिए धन्यवाद, जिसने बहुत मदद की। – lightstalker89
यह सुझाव बहुत अच्छा काम करता है! हालांकि, अगर आप अपनी इंडेक्स फ़ाइल में टैग जोड़ना नहीं चाहते हैं, तो अपनी एसएस फाइलों में आयात कथन का उपयोग करें और इसके बजाय अपने एसएएस फाइलों में @import स्टेटमेंट्स का उपयोग करें। Copy.config.js को ओवरराइड करना आवश्यक है कि आप watch.config.js फ़ाइल को ओवरराइड करें ताकि आपका लाइव रीलोड काम कर सके। बस मूल कॉन्फ़िगरेशन को @ आयनिक/ऐप-स्क्रिप्ट/कॉन्फ़िगरेशन में कॉपी करें और आवश्यक() कमांड को सापेक्ष node_modules स्थान पर इंगित करें। चियर्स – 4UmNinja