Angular - 在rxjs订阅等待数据时显示加载中
创始人
2024-10-15 02:30:45
0

在Angular中,您可以使用rxjs来订阅等待数据时显示“加载中”。以下是一个例子:

在组件的HTML模板中,您可以添加一个加载指示器,例如一个加载动画或一个加载文本:

加载中...

在组件的TypeScript文件中,您可以使用rxjs的操作符来显示或隐藏加载指示器。在这个例子中,我们使用了tap操作符来设置isLoading变量的值:

import { Component, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
import { tap } from 'rxjs/operators';

@Component({
  selector: 'app-example',
  template: `
    
加载中...
  • {{ item }}
`, }) export class ExampleComponent implements OnInit { isLoading = true; data$: Observable; ngOnInit() { this.data$ = this.getData().pipe( tap(() => this.isLoading = false) ); } getData(): Observable { // 模拟异步获取数据 return new Observable(observer => { setTimeout(() => { observer.next(['数据1', '数据2', '数据3']); observer.complete(); }, 2000); }); } }

在上面的例子中,isLoading变量用于控制加载指示器的显示与隐藏。初始值为true,表示正在加载数据。

ngOnInit生命周期钩子中,我们调用getData方法来获取数据,并使用tap操作符在数据加载完成后将isLoading设置为false

在模板中,我们使用了async管道来订阅data$Observable并实时显示数据。同时,我们使用了*ngIf指令来根据isLoading变量的值来显示或隐藏加载指示器。

getData方法模拟异步获取数据的过程时,加载指示器将会显示2秒钟,直到数据加载完成后隐藏。

相关内容

热门资讯

wepoker正确养号方法!哈... wepoker正确养号方法!哈糖大菠萝怎么挂(透视)器-竟然专业真的是有挂1、上手简单,内置详细流程...
智星德州插件2024最新版!w... 智星德州插件2024最新版!wepoker破解器(透视)技巧-确实详细是真的挂;1、智星德州插件20...
wepoker网页版透视方法!... wepoker网页版透视方法!We poker辅助器下载(透视)脚本-真是推荐存在有挂wepoker...
wepoker透视方法!哈糖大... wepoker透视方法!哈糖大菠萝软件下载(透视)app-竟然必备是真的挂1、哈糖大菠萝软件下载公共...
约局吧开挂神器是真的吗!wep... 约局吧开挂神器是真的吗!wepoker免费透视脚本(透视)攻略-确实揭露真的是有挂1、每一步都需要思...
hhpoker有透视的吗!we... hhpoker有透视的吗!wejoker辅助脚本(透视)方法-确实必备真的是有挂1、操作简单,无需h...
wepoker有没有挂!hhp... wepoker有没有挂!hhpoker德州牛仔视频(透视)软件-切实揭幕真的有挂1、许多玩家不知道h...
epoker有透视吗!wpk德... epoker有透视吗!wpk德州局透视(透视)神器-总是普及真的有挂1、操作简单,无需epoker有...
德州私人局怎么透视!pokem... 德州私人局怎么透视!pokemmo脚本(透视)器-其实详情是有挂1、不需要AI权限,帮助你快速的进行...
wepoker透视方法!xpo... wepoker透视方法!xpoker辅助神器(透视)挂-确实推荐存在有挂1、上手简单,内置详细流程视...