[RxJS] SampleTime & Sample
amp Rxjs Sample
2023-09-14 08:59:12 时间
SampleTime
If there is no value emiited between sample time and previous emited value, ouput won't have anything.
import { fromEvent, interval } from 'rxjs';
import { sample, sampleTime, map } from 'rxjs/operators';
const click$ = fromEvent(document, 'click');
const timer$ = interval(1000);
click$
.pipe(
/*
* At the duration you specify, sample time will emit the last
* emitted value within that window. For instance, in this
* example we are sampling at an interval of 4s. When the 4s
* interval timer begins, you can click twice. Once 4s passes,
* the second click will be emitted. This behavior is then repeated.
* If no values are emitted from the source in the sample
* window no values are emitted by sampleTime.
*/
sampleTime(4000),
// @ts-ignore
map(({ clientX, clientY }) => ({
clientX,
clientY
}))
)
.subscribe(console.log);
Sample
import { fromEvent, interval } from 'rxjs';
import { sample, sampleTime, map } from 'rxjs/operators';
const click$ = fromEvent(document, 'click');
const timer$ = interval(1000);
timer$.pipe(
/*
* The sample window can also be based off another stream.
* For instance, in this example every time you click the
* last value emitted by the timer$ observable will be emitted
* by sample.
*/
sample(click$)
).subscribe(console.log);
相关文章
- createContext & useContext 上下文 跨组件透传与性能优化篇
- 浅谈云上攻防系列——云IAM原理&风险以及最佳实践
- Java中&和&&,|和||的区别(超详细讲解),细节请必会!
- 也许有用(也谈VC中ModifyStyle&ModifyStyleEx无法改变控件的Style)[通俗易懂]
- 小团队的CI&CD该如何处理
- 一码中_amp是什么意思
- 重识Nginx - 13 对称加密与非对称加密的应用场景 & Nginx性能指标
- 08Prism WPF 入门实战 - Cmd&EeventAggregator
- 性能测试(第3集)第18讲:JMeter HTTP Request&参数化&CVS Data Set Config&函数助手
- AMP与Oracle结合提升数据库性能($amp oracle)
- 学习YUI.Ext第七日-View&JSONViewPartTwo-一个画室网站的案例