[RxJS] Toggle A Stream On And Off With RxJS

This lesson covers how to toggle an observable on and off from another observable by showing how to use a checkbox as a toggle for a stream of data.

 

复制代码
<!DOCTYPE html>
<html>
<head>
<script src="https://npmcdn.com/@reactivex/rxjs@5.0.0-alpha.8/dist/global/Rx.js"></script>
  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
<body>
  <input type="checkbox" id="toggle">
  <div id="display"></div>
</body>
</html>
复制代码

 

复制代码
const display = document.querySelector('#display');
const toggle = document.querySelector('#toggle');

const source$ = Rx.Observable.interval(100)
  .map(() => '.');
const checked$ = Rx.Observable.fromEvent(toggle, 'change')
  .map(e => e.target.checked);
const sourceThatStop$ = source$.takeUntil(checked$);

checked$
  .filter( flag => flag === true)
  .switchMapTo( sourceThatStop$ )
  .subscribe( (x) => {
    display.innerHTML += x;
});
复制代码

 

posted @   Zhentiw  阅读(284)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2015-03-15 [Whole Web] [Node.js] [Browserify] [Grunt] Automation task with grunt-browserify & grunt-contrib-watch
2015-03-15 [Whole Web] [Node.js] Using npm run to launch local scripts
点击右上角即可分享
微信分享提示