有没有一种方法可以将我的 PWA 从 Vue 重写到 React 而不会破坏现有用户?

Is there a way to re-write my PWA from Vue to React and not break it for existing users?

我有一个用 Vue 构建的 PWA,每天有数百名用户使用。当然,有一个 service worker 可以缓存所有静态资产。每当推送和部署新版本时,都会出现一个按钮,提示用户将其 PWA 更新到最新版本。

我们正在彻底重写这个应用程序,现在想使用 React + Next.js 而不是 Vue。

是否有任何理智方法可以让我们的用户顺利过渡?我希望在我们部署新应用程序时为他们提供服务,但看看所有底层文件将如何不同,那些安装了以前的服务工作者的人将永远不会得到新的、完全重写的应用程序的服务。

如何推送对现有版本的更新,使服务工作者进行某种检查以查看是否需要自行清除?比如检查哈希、文件、日期或类似的东西,以了解何时 invalidate/clear 本身并加载新的东西。

这样当你上传新版本时,旧版本会看到新版本已经启动并可以重新加载到新版本。