مشکل در register کردن serviceworker در pwa

2 سال پیش توسط amir manafi آپدیت شد
آفلاین
user-avatar
mohsen ja ( 301 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

1

سلام خدمت همه دوستان راکتی !

دوستان من یه مشکلی دارم توی رجیستر کردن سرویس ورکر توی pwa

وقتی ران میگیرم تا ببینم رجیستر شده یا نه با این خطا رو به رو میشم :

dont Activated: TypeError: Failed to register a ServiceWorker: A bad HTTP response code (404) was received when fetching the script.

اینم کد فعال کردن service worker من :

    navigator
     .serviceWorker
     .register('/service-worker.js').then(registration => {
         console.log('Service worker has been Activted  :' , registration);
     }).catch(err => {
         console.log('dont Activated:' , err )
     })
} else {
    console.log('Servise workers not actived')
}

مشکل چیه ؟

بهترین پاسخ
آفلاین
user-avatar
mohsen ja
3 سال پیش

دوستان حل شد مشکل لینک دهی دوباره بود دوبار لینک کرده بودم یک فایلو

آفلاین
user-avatar
mohsen ja ( 301 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

خطا اینه :

dont Activated: TypeError: Failed to register a ServiceWorker: A bad HTTP response code (404) was received when fetching the script.

آفلاین
user-avatar
Igo ( 3929 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

خوب از خطایی که داده معلومه دیگه فایل اسکریپت رو نمیتونه پیدا کنه

آفلاین
user-avatar
mohsen ja ( 301 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

حلشو چیکار کنم ؟

آفلاین
user-avatar
mohsen ja ( 301 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

دوستان حل شدن حالا برای درست کردن دکمه add to home screen موندم

این کد جاوااسکریپت منه :

let installPromptEvent;

window.addEventListener('beforeinstallprompt' , (event) => {
    e.preventDefault();
    console.log('before install prompt event')
    installPromptEvent = event;
});

document.querySelector('.addtohomescreenbutton a').addEventListener('click' , (event) => {
    e.preventDefault();
    console.log(installPromptEvent);
    if(installPromptEvent) {
        installPromptEvent.prompt();

        installPromptEvent.userChoice
            .then((choiceResult) => {
                if(choiceResult.outcome === 'accepted') {
                    console.log('User Accepted');
                } else {
                    console.log('User dismissed');
                }

                installPromptEvent = null;
            })
    }
})

ارورمم اینه

Uncaught TypeError: Cannot read property 'addEventListener' of null
    at

اینم اون لاین :

.addEventListener('click' , (event) => {

مشکلم چیه ؟

آفلاین
user-avatar
Igo ( 3929 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

احمالا وقتی داری از document.querySelector استفاده میکنی هیچ المنتی رو پیدا نمیکنه بخاطر همینه که نمیتونه رویداد بهش اضافه کنه.

آفلاین
user-avatar
mohsen ja ( 301 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

بابا داداش اخه چرا پیدا نمیکنه ؟

این اون تگی که باید پیدا کنه :

      <a class="pwa-test" href="test.html">Add</a>

اینم لیسنر :

document.querySelector('.pwa-test').addEventListener('click' , (e) => {

اخه مشکل چیه ؟ کلاسا که یکیه پس چرا پیدا نمیکنه ؟ تازه از تگ div هم در اوردمش ولی باز پیدا نمیکنتش لینک کردم فایلامو بهم
@hesammousavi یه کمکی بکن

آفلاین
user-avatar
mohsen ja ( 301 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

دوستان حل شد مشکل لینک دهی دوباره بود دوبار لینک کرده بودم یک فایلو

آفلاین
user-avatar
محمود ( 684 تجربه )
3 سال پیش

لینک کوتاه اشتراک گذاری

0

من هم به این مشکل برخورد کردم ، ولی مشکلم این بود که به کوچک و بزرگ بودن حروف دقت نکرده بودم و روی لوکال به درستی کار می کرد اما وقتی بردم رو هاست فایل رو پیدا نمی کرد...

آفلاین
user-avatar
amir manafi ( 5246 تجربه )
2 سال پیش

لینک کوتاه اشتراک گذاری

0

@mohsenja588
برای درست کردن دکمه add to home screen
کدهایی که نوشتید در کدام فایل و کجا می نویسید
ایا باید در فایل service-worker.js بنویسیم یا در خود فایل index

و سوال بعدی اینکه
<a class="pwa-test" href="test.html">Add</a>

این دکمه رو باید در کدام قسمت بنویسیم

ممنون

برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.