保持 Angular 8 的 toast/snackbar 在长时间运行的任务中保持活跃。
创始人
2024-11-21 13:30:25
0

要在长时间运行的任务中保持 Angular 8 的 toast/snackbar 活跃,可以使用 Angular 的 ChangeDetectorRefApplicationRef

首先,确保你已经导入了 ChangeDetectorRefApplicationRef

import { ChangeDetectorRef, ApplicationRef } from '@angular/core';

然后,在组件的构造函数中注入 ChangeDetectorRefApplicationRef

constructor(private cdr: ChangeDetectorRef, private appRef: ApplicationRef) { }

接下来,在长时间运行的任务中,你可以使用 ChangeDetectorRefdetectChanges() 方法来手动触发变更检测。

longRunningTask() {
  // 长时间运行的任务

  this.cdr.detectChanges();
}

这样可以确保在任务运行期间更新的数据能够被正确地显示在视图中。

另外,你也可以使用 ApplicationReftick() 方法来手动触发变更检测。

longRunningTask() {
  // 长时间运行的任务

  this.appRef.tick();
}

这与 ChangeDetectorRefdetectChanges() 方法类似,都可以用来保持视图的活跃状态。

完整示例代码如下:

import { Component, ChangeDetectorRef, ApplicationRef } from '@angular/core';

@Component({
  selector: 'app-example',
  template: `
    
    
Toast / Snackbar
` }) export class ExampleComponent { showToast = false; constructor(private cdr: ChangeDetectorRef, private appRef: ApplicationRef) { } startLongRunningTask() { this.showToast = true; // 长时间运行的任务 this.cdr.detectChanges(); // 或者 this.appRef.tick(); } }

这样,当你点击 "开始任务" 按钮时,toast/snackbar 将会在长时间运行的任务期间保持活跃状态。

相关内容

热门资讯

六分钟有透视!德普之星有辅助软... 六分钟有透视!德普之星有辅助软件吗(透视辅助软件)详细辅助脚本(一直脚本)1、上手简单,内置详细流程...
7分钟透视辅助软件!德普之星透... 7分钟透视辅助软件!德普之星透视辅助软件激活码(透视辅助软件)详细辅助模拟器(竟然模拟器)亲,关键说...
三分钟软件!德普之星怎么设置埋... 三分钟软件!德普之星怎么设置埋牌(透视辅助软件)详细辅助外挂(原来外挂)运辅助工具,进入游戏界面。进...
七分钟透视免费!德普之星的辅助... 七分钟透视免费!德普之星的辅助工具介绍(透视辅助)详细辅助作弊(果然作弊)1、操作简单,无需注册,只...
八分钟私人局辅助免费!德普之星... 八分钟私人局辅助免费!德普之星辅助工具如何打开(透视辅助软件)详细辅助器(原来器)1、全新机制【软件...
9分钟有透视!德普之星辅助软件... 9分钟有透视!德普之星辅助软件(透视辅助)详细辅助俱乐部(原来俱乐部)1、9分钟有透视!德普之星辅助...
1分钟有透视!德普之星辅助工具... 1分钟有透视!德普之星辅助工具如何打开(透视辅助软件)详细辅助免费(本来免费)1、ai机器人多个强度...
一分钟破解版!德普辅助软件(透... 一分钟破解版!德普辅助软件(透视辅助软件)详细辅助免费(真是免费)德普辅助软件辅助器中分为三种模型:...
一分钟开辅助!如何下载德普之星... 一分钟开辅助!如何下载德普之星辅助软件(透视辅助)详细辅助神器(一贯神器)德普之星辅助软件辅助器中分...
1分钟透视免费!德普软件,德普... 1分钟透视免费!德普软件,德普软件,详细教程(有挂软件)1、下载好辅助软件之后点击打开,先需要设置辅...