如何解决如何在不刷新页面的情况下更新 Angular 中的旧版本 Service Worker?
我有一个 Angular 应用程序,每当发布新版本时,我都会通过该应用程序提示用户更新应用程序。但是,现在我需要在没有用户输入的情况下强制更新。为了更新,我一直在使用 Angular Service Worker 和 SwUpdate 类。
我的问题是,当我发布带有据称会强制自动更新的代码的新版本时,使用旧版本应用程序的用户会一直看到要求他们更新的提示。如果他们确实更新了应用程序可以正常工作,但如果他们不更新,旧版本将不再与新实现的功能兼容。
public checkForUpdates() {
// console.log("checkForUpdates");
// console.log(this.updates.isEnabled);
if (this.updates.isEnabled) {
this.updates.available.subscribe((event) => {
console.log("current version is",event.current);
console.log("available version is",event.available);
this.updates.activateUpdate().then(() => document.location.reload());
//document.location.reload();
//this.promptUser(event);
});
this.updates.activated.subscribe((event) => {
console.log("old version was",event.prevIoUs);
console.log("new version is",event.current);
});
}
}
如何让现有的旧版本用户在没有他们输入的情况下进行更新?似乎如果他们不刷新或手动更新应用程序,他们将无法获得新版本。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。