Angular 如何根据角度测量中每隔几秒钟的计数加载数据
我在一个数组中有4个对象,我只想一次加载/控制台2个对象,然后在2秒钟后再次加载剩余的2个对象..以此类推,直到我达到4,以角度为单位。下面是代码 app.component.tsAngular 如何根据角度测量中每隔几秒钟的计数加载数据,angular,Angular,我在一个数组中有4个对象,我只想一次加载/控制台2个对象,然后在2秒钟后再次加载剩余的2个对象..以此类推,直到我达到4,以角度为单位。下面是代码 app.component.ts 不完全确定要查找什么,但可以使用RxJSfrom函数创建对象流和缓冲区,并使用concatMap、bufferCount和delay操作符延迟它们 试试下面的方法 来自(this.arraydata) .烟斗( 缓冲计数(2), concatMap(objs=>of(objs).pipe(delay(2000)))
不完全确定要查找什么,但可以使用RxJS
from
函数创建对象流和缓冲区,并使用concatMap
、bufferCount
和delay
操作符延迟它们
试试下面的方法
来自(this.arraydata)
.烟斗(
缓冲计数(2),
concatMap(objs=>of(objs).pipe(delay(2000)))
)
.订阅({
下一步:objs=>{
console.log(objs);
//做点别的
}
});
我修改了你的密码
我在这里看到的一个缺点,您没有提到的是,第一次发射也会延迟2秒。最简单的方法是使用
setInterval
,您也可以使用可观察的
:好的,但是如何每隔一个间隔获得接下来的两个对象
import { Component, OnInit } from "@angular/core";
@Component({
selector: "my-app",
templateUrl: "./app.component.html",
styleUrls: ["./app.component.css"]
})
export class AppComponent {
name = "Angular";
arraydata = [
{ name: "name1", value: 1 },
{ name: "name2", value: 2 },
{ name: "name3", value: 3 },
{ name: "name4", value: 4 }
];
ngOnInit() {
console.log(this.arraydata);
}
}