Rxjs
RxJS (Reactive Extensions for JavaScript) 是 JavaScript 的响应式编程库,它是 NestJS 中处理异步操作和事件的核心工具之一。
了解即可,使用的时候查看文档。
import { interval, Observable, take } from 'rxjs'
const observable = new Observable((subscribe) => {
subscribe.next(1) // 传递值
subscribe.next(2)
subscribe.next(3)
setTimeout(() => {
subscribe.next(4)
subscribe.complete() //结束
}, 3000)
})
observable.subscribe({
next: (num) => {
console.log(num) // 接收执行
},
})
const subs = interval(500) // 间隔 500 毫秒执行
.pipe(take(5)) // 通过管道限制执行 5 次
.subscribe((e) => {
console.log(e) // 打印当前的次数
subs.unsubscribe() // 停止观察
})