gpt4 book ai didi

javascript - ASP.NET Core 2.1 - PWA(取消Banner提示)

转载 作者:行者123 更新时间:2023-11-29 20:48:21 25 4
gpt4 key购买 nike

尝试使用 ASP.NET Core 2.1 和 Nuget 制作渐进式 Web 应用程序:WebEssentials.AspNetCore.PWA

我的 serviceworker 和 list 显示在 Chrome 开发工具中,但是当我点击“添加到主屏幕”时,除了在计算机上显示错误之外没有任何反应,而在手机上,顶部的加载横幅卡在加载中。

错误:

Site cannot be installed: the page has requested the banner prompt be cancelled

我似乎找不到关于这个错误的任何信息,所以希望你们能帮助我。提前致谢。

服务 worker :

self.addEventListener('install', async event => {
const cache = await caches.open(CACHE_NAME);
cache.addAll(urlsToCache).catch(err => console.log('An error occured: ', err));
});

self.addEventListener('fetch', event => {
const request = event.request;
const url = new URL(request.URL);

if (url.orgin === location.orgin) {
event.respondWith(cacheFirst(request));
} else {
event.responseWith(networkFirst(request));
}

});

async function cacheFirst(request) {
const cachedResponse = await caches.match(request);
return cachedResponse || fetch(request);
}

async function networkFirst(request) {
const cache = await caches.open('wportal-dynamic-v1');

try {
const res = await fetch(request);
cache.put(request, res.clone());
return res;
} catch (exception) {
console.log('An error occured in networkFirst: ', exception);
return await cache.match(request);
}
}

最佳答案

找到解决方案..

var deferredPrompt = null;                

window.addEventListener('beforeinstallprompt', (e) => {
e.preventDefault(); // Prevent Chrome 67 and earlier from automatically showing the prompt
deferredPrompt = e;
});
<button onclick="deferredPrompt.prompt();">Click me to install pwa</button>

关于javascript - ASP.NET Core 2.1 - PWA(取消Banner提示),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53281183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com