码迷,mamicode.com
首页 > Web开发 > 详细

rx.js Observable 剖析(创建,订阅,执行,清理 )

时间:2018-04-05 11:33:12      阅读:924      评论:0      收藏:0      [点我收藏+]

标签:error   down   overview   tin   并发   over   subscript   操作   lock   

文档 http://cn.rx.js.org/manual/overview.html#h24

Observables 是使用 Rx.Observable.create 或创建操作符创建的,并使用观察者来订阅(subscribe)它,然后执行它并发送 next / error / complete 通知给观察者,而且执行可能会被清理(unsubscribe)。

const { Observable } = require('rxjs');

// 创建 Observables
var observable = Observable.create(observer => {
    var id = setInterval(() => {
        observer.next('hi')
    }, 1000);

    // 提供取消和清理 interval 资源的方法
    return function unsubscribe() {
        clearInterval(id);
    };
});

// Observer (观察者,執行)
var observer = {
    next(res) {
        format(res)
    },
    error(err) {
        format(err)
    },
    complete() {
        format('done.')
    },
};

// 订阅 Observables
var subscription = observable.subscribe(observer);

// .add() 合并多个订阅,以便同时取消订阅
// subscription.add(childSubscription);

// 撤销 add的合并
// subscription.remove(childSubscription);

// 3s后取消订阅
setTimeout(() => {
    subscription.unsubscribe();
}, 3000)

rx.js Observable 剖析(创建,订阅,执行,清理 )

标签:error   down   overview   tin   并发   over   subscript   操作   lock   

原文地址:https://www.cnblogs.com/ajanuw/p/8720585.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!