微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

手动更新 Blazor WebAssembly 应用程序

如何解决手动更新 Blazor WebAssembly 应用程序

我们即将发布我们的第一个 Blazor WebAssembly 独立应用程序(即不托管在 .Net Core 上)。我开始喜欢 Blazor 并期待用它制作一些很棒的应用程序!然而,推送应用程序更新一直令人头疼!似乎有一个难以更新的持久缓存,超级烦人!可能是我缺乏理解,但它似乎并不像每个人说的那样有效。

我想构建某种应用版本控制系统和一种通知用户有可用更新的方法。最重要的是,我想让用户能够手动执行更新……但是搜索这个主题很困难。我一定没有使用正确的关键字,因为似乎没有关于 Blazor 的文档?

如果我将 Blazor 排除在搜索查询之外,那么如果我理解正确的话,其他 SPA 应用程序似乎会通过 Service Worker 执行此操作?然而,这是一个完全不同的深入主题,如果我的理解是正确的,显然我必须学习一些东西?

谁能引导我朝着正确的方向学习如何创建这样的更新流程?

解决方法

好的...所以我现在的答案是一个补丁。花了一段时间才弄清楚,因为我知道发生了什么......无法像我想要的那样清除缓存......我只是不明白为什么。许多关于 Blazor 的教程和培训,但 Service Worker 应该是 WebAssembly 应用程序应该包含的其中之一。不幸的是,此时我找不到任何东西,直到我将 Blazor 排除在我的 Google 搜索之外并且只是研究了一般的 SPA 缓存问题。

诚然,Service Worker 本身并不是 Blazor 特定的技术……但是,如果您正在构建 SPA,那么您至少应该了解并学习如何使用它。然而,这不是一个轻松的主题,所以现在我只是注释掉 service-worker.published.js 中的所有代码,并将其替换为用于开发的一个 liner service worker,即 service-worker.js 文件: enter image description here

我知道这不是最终解决方案......最终我将不得不学习如何充分利用服务工作者。但是现在它可以按我的意愿工作,因为我希望我的开发更改立即可用。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。