इसे ठीक करने के लिए अद्यतन और सही समाधान
से जवाब के आधार पर लेन-देन क्वांग , मैं देख रहा हूँ के लिए चला गया CHANGELOG.md की ionic-native
और पता चला है कि वे हाल ही में अपने पैकेज अद्यतन कोणीय 9 के साथ संकलित करने के लिए आया था।
इसलिए आपको किसी भी / सभी निर्भरता को अपडेट करने की आवश्यकता है @ionic-native
। इसके लिए, अपनी package.gson
फ़ाइल की उन सभी निर्भरताओं को देखें जो @ionic-native/
एक-एक करके शुरू होती हैं और उन्हें एक-एक करके अपडेट करती हैं।
उदाहरण के लिए, यह मेरा है package.gson
:
इसलिए मुझे अपने सभी @ionic-native
आश्रितों को अद्यतन करने के लिए निम्नलिखित आदेशों को चलाना पड़ा :
npm i @ionic-native/core@latest
npm i @ionic-native/camera@latest
npm i @ionic-native/firebase-x@latest
npm i @ionic-native/splash-screen@latest
npm i @ionic-native/status-bar@latest
वही आपको अपनी @ionic-native
निर्भरता के लिए करना होगा । बस यह सुनिश्चित करें, उन लोगों को न्यूनतम अपडेट किया जाता है v5.21.5
(क्योंकि कुछ पुराने रिलीज काम नहीं कर रहे थे)।
चीयर्स 😀🎉🎊
यदि किसी कारण से, आप अपनी @ionic-native
निर्भरता को अपडेट नहीं कर सकते हैं, तो अलग-अलग वर्कअराउंड / समाधानों के लिए मेरे मूल उत्तर को देखें
मूल उत्तर
मेरे लिए, निम्न समाधानों ने काम किया। सुनिश्चित नहीं हैं कि वे जोड़ने के लिए एकदम सही हैं, लेकिन उम्मीद है कि Ionic टीम इसे ठीक कर देगी क्योंकि इन समाधानों की ज़रूरत नहीं थी जब मैंने अपने सादे कोणीय ऐप को कोणीय 9 में अपग्रेड किया था।
समाधान 1
बदलकर AOT बंद कर दें "aot": true
करने "aot: false
में angular.json
फ़ाइल। मैं इसकी अनुशंसा नहीं करूंगा क्योंकि यह कोणीय ऐप के प्रदर्शन में सुधार करता है और विकास मोड में त्रुटि कोड को पकड़ने में सुधार करता है।
समाधान २
यदि आप इसमें परिवर्तन नहीं करना चाहते हैं angular.json
और ionic serve
केवल इस समस्या को ठीक करना चाहते हैं , तो --aot=false
ध्वज को ng
कमांड का उपयोग करके पास करें --
:
ionic serve -- --aot=false
समाधान 3 (अंधा विकल्प)
यदि ऊपर दिए गए कोई भी समाधान आपके लिए काम नहीं कर रहे हैं, तो आप एक कमांड चला सकते हैं, npm update
जो आपके सभी निर्भरता को शाब्दिक रूप से अपडेट कर देगा package.json
(इसका मतलब है, आयनिक निर्भरता भी अपडेट हो जाएगी)।
यह एक अंधा विकल्प है क्योंकि आपको इस बात का अंदाजा नहीं होगा कि कौन-सी निर्भरताएँ अद्यतन हैं और उन अद्यतन निर्भरताओं में कौन-कौन से परिवर्तन हैं। तो आप इस वजह से अन्य मुद्दों को ठीक कर सकते हैं।
इसलिए यह जोखिम उठाना आपके ऊपर है :) खैर, यह करने के लायक है यदि आपका ऐप उतना बड़ा नहीं है या किसी भी कोड का उपयोग नहीं कर रहा है जो नए निर्भरता में हटा दिए गए हैं।
समाधान 4 (अंतिम और सबसे खराब विकल्प)
फ़ाइल import '@angular/compiler';
में जोड़ें main.ts
। लेकिन इससे बंडल का आकार बढ़ सकता है ।
अतिरिक्त
आयनिक को अपग्रेड करते समय, आप गलत import
होने के कारण किसी अन्य समस्या का सामना कर सकते हैं polyfills.ts
। यदि हाँ, तो Irc 5 को अपग्रेड करने के बाद टाइपस्क्रिप्ट संकलन से src / zone-flag.ts गायब है