当我们的 Angular PWA 有新的更新可用时,我们会显示一个底部表格。它位于 SwUpdate.available 方法中。SwUpdate.available 只有在我们在服务器中运行 build 命令时才会触发。如果我们在本地运行构建命令并将文件上传到服务器,则不会发生任何事情。由于我们的服务器内存较少,因此构建命令在服务器上大部分时间都失败了。
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss'],
})
export class AppComponent implements OnInit {
constructor(
private swUpdate: SwUpdate,
private _bottomSheet: MatBottomSheet,
) {
this.checkForUpdates();
}
ngOnInit() {}
checkForUpdates() {
this.swUpdate.available.subscribe(event => {
this.swUpdate.activateUpdate().then(() => {
this.openBottomSheet();
});
});
}
openBottomSheet(): void {
this._bottomSheet.open(UpdateBottomSheetComponent);
}
}