pwa实现动态start_url和scope等实现方案

大家好,我的开源项目PakePlus可以将网页/Vue/React项目打包为桌面/手机应用并且小于5M只需几分钟,官网地址:pakeplus.com

要想实现动态的start_url,比如定制不同的路径或者添加参数,就可以使用这段代码,但是!!!!!这个在safari中不生效,所以如果你是ipad设备或者ios设备是不生效的,这个是坑

javascript 复制代码
const transformManifest = async () => {
    console.log('transformManifest')
    const url = '/manifest.webmanifest'
    console.log('url', url)
    const manifest = await (await fetch(url)).json()
    const path = location.pathname.split('/')
    const newPath =
        path && provideruuid && stationeuuid
            ? window.location.origin +
              '?provideruuid=' +
              provideruuid +
              '&stationeuuid=' +
              stationeuuid
            : window.location.href
    console.log('newPath', newPath)
    manifest.start_url = newPath
    manifest.scope = newPath
    manifest.id = '/'
    console.log('manifest', manifest)
    const manifestString = JSON.stringify(manifest)
    const blob = new Blob([manifestString], { type: 'application/json' })
    const manifestURL = URL.createObjectURL(blob)
    document
        .querySelector('[rel="manifest"]')
        ?.setAttribute('href', manifestURL)
    return Promise.resolve(manifestURL)
}

大家好,我是1024小神,技术群 / 私活群 / 股票群 或 交朋友 都可以私信我。 如果你觉得本文有用,一键三连 (点赞、评论、关注),就是对我最大的支持~

相关推荐
骑着蜗牛撵大象32722 分钟前
LangChain 工具调用从声明到闭环:给智能体接上真实的手脚
前端
数据掘金33 分钟前
百度统计后台页面数据异常?从手动调用时机开始排查
前端
hunteritself34 分钟前
10 层 4K 实时剪辑,国产工作站进入广电制作核心
大数据·前端·人工智能·深度学习·transformer
踩着两条虫35 分钟前
我在浏览器里“盖”了一个村:Vue + Three.js 大屏开发踩坑记
前端·vue.js·three.js
mbshqqb40 分钟前
TypeScript基础教程之同步生成器
前端·javascript·typescript
嘟嘟同学和妮妮同学1 小时前
【升级】一个中国历史可视化站:皇帝时间线梳理、古代思想流派、诗词鉴赏 (2)
前端·html
暗夜行者之光1 小时前
LangGraph + MCP 实战:构建"自然语言查数据"的 ChatBI Agent
前端·后端
一tiao咸鱼1 小时前
还在手动海投?我做了个 AI 求职助手,自动筛选 BOSS 职位再精准投递
前端·后端·面试
尤水就下1 小时前
🔥预热:在线文档的 block 架构是如何实现的(未完待续...)
前端·javascript·架构
全栈项目管理程序猿2 小时前
ArcGIS JS 基础教程(29):CSVLayer 表格点位图层
前端·javascript