2017-05-26 11 views
6

मैं मैं तो क्या किया PWA के रूप में मेरे एप्लिकेशन प्रकाशित करना चाहते हैंआयनिक 3 PWA (प्रगतिशील वेब एप्लिकेशन) के रूप में एप्लिकेशन

है प्रकाशित

<!--script> 
    if ('serviceWorker' in navigator) { 
     navigator.serviceWorker.register('service-worker.js') 
     .then(() => console.log('service worker installed')) 
     .catch(err => console.log('Error', err)); 
    } 
</script--> 

index.html को यह स्क्रिप्ट दर्ज तो स्थापित

npm run ionic:build --prod 

ऐसा लगता है कि यह इसके तैनात लेकिन मेरे प्रश्न हैं:

  1. ऐप को पीडब्लूए के रूप में प्रकाशित करने के लिए होस्ट करने के लिए मुझे कौन सी फाइलें अपलोड करने की आवश्यकता है?
  2. क्यों जब मैं ऐप में कुछ बदलता हूं और आयनिक सेवा चलाता हूं तो कुछ भी नहीं बदला जाता है और यह केवल WWW फ़ोल्डर के index.html में बदल जाता है? क्यों? (क्योंकि अब यह पीडब्ल्यूए है ??)

  3. जब मैं www फ़ोल्डर खोलता हूं और जब मैं चेतावनी संवाद खोलता हूं तो बटन खोलता हूं तो यह खुला नहीं होता है। क्यूं कर?

  4. जब मैं आदेश चलाता हूं? केवल विकास के अंत में?

उत्तर

9

भागो

ionic cordova platform add browser

ionic build browser --prod --release

फिर [project_folder]/platforms/browser/www के पास जाकर आप पर http सर्वर सामग्री की प्रतिलिपि।

+0

जब मैं ऐसा करता हूं? जब मैं ऐप के विकास को खत्म करता हूं? क्योंकि अब मैं दौड़ता हूं और जब मैं अपने ऐप में कुछ बदलता हूं और आयनिक सेवा चलाता हूं तो मुझे बदलाव दिखाई नहीं देते हैं। –

+0

यह 'आयनिक अनुकरण ब्राउज़र - livereload' के साथ किया जाना चाहिए। लेकिन इसमें कुछ समस्याएं हैं (https://stackoverflow.com/questions/44178594/ionic-run-browser-livereload-not-working) (https://github.com/driftyco/ionic-cli/issues/790) –

+0

जब मैं आयनिक कॉर्डोवा अनुकरण करता हूं ब्राउज़र जोड़ें - लिवररेलोड यह मुझे दिखाता है "आप प्लेटफॉर्म जोड़ते हैं Api.js नहीं है" –

7

पीडब्ल्यूए के लिए कॉर्डोवा से परेशान न हों। बस npm run build --prod का उपयोग करें और /www फ़ोल्डर अपलोड करें।

पीडब्ल्यूए अवधारणाओं का एक संग्रह है, इसलिए यह सिर्फ "चालू" या "बंद" नहीं है। कम से कम हालांकि आप शायद एक मेनिफेस्ट फ़ाइल जोड़ना चाहते हैं ताकि आप ब्राउजर फ्रेम को छिपाने, अपना आइकन, एप नेम इत्यादि को छिपाकर इसे "एप जैसे" बना सकें। सेवा कार्यकर्ता जोड़ने के लिए लाइन को असम्बद्ध करना जादुई रूप से इसे नहीं बनाता है पीडब्लूए अगर आपने सेवा कार्यकर्ता में कुछ भी "उपयोगी" नहीं रखा है (जिसे आप करना चाहते हैं या नहीं कर सकते हैं, तो यह निर्भर करता है कि आपका ऐप कैसे काम करता है)। यह भी ध्यान रखें कि सेवा कार्यकर्ता का उपयोग करने के लिए आपको HTTPS की आवश्यकता होगी।

आपको index.html से मैन्युअल रूप से लाइन को हटाने की भी आवश्यकता होगी जिसमें cordova.js शामिल है (यदि आप केवल अपलोड/www करते हैं तो 404 त्रुटि होगी)।

+0

यह दृष्टिकोण विकास को प्रभावित करेगा वास्तुकला, उदाहरण के लिए, ब्राउज़र प्लेटफ़ॉर्म का समर्थन करने वाले देशी प्लगइन को छोड़कर। –

+1

यह सही है। मैंने बहुत सारे लोगों को नहीं देखा है जो ब्राउज़र में "अच्छी तरह से" काम करते हैं, इसलिए आमतौर पर मेरे कोड में प्लेटफार्म की जांच करेंगे और कुछ बटन छिपाएंगे।शेष देशी विशिष्ट कोड पहले ही उपलब्धता के लिए जांच करता है लेकिन हां निश्चित रूप से आपके प्रकार के ऐप के आधार पर आपको कॉर्डोवा ब्राउज़र के साथ जाना पड़ सकता है, लेकिन मुझे लगता है कि यह उन ऐप्स के लिए अपवाद है जो पीडब्लूए के रूप में काम कर सकते हैं। –

+0

कृपया आईओनिक में प्लेटफ़ॉर्म ब्राउज़र जोड़ने के फायदे (या नुकसान) पर विस्तृत करें। यह क्या करता है और मुझे इसकी आवश्यकता क्यों हो सकती है? जो कुछ मैं समझता हूं उससे कुछ कॉर्डोवा प्लगइन्स (या आयनिक मूल) ब्राउज़र को भी लक्षित कर सकता है और यदि आप इसे पीडब्लूए के रूप में चलाते हैं तो इसे स्वचालित रूप से वापस आ जाएगा? प्लगइन जो ब्राउज़र का समर्थन नहीं करते हैं उन्हें वेब के लिए एक रैपर और फ़ॉलबैक सेवा की आवश्यकता होगी - क्या यह सही है? – Rodney

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