Pulse7
8/19/2017 - 10:45 AM

Importing only needed parts (from 1mb to 360kb)

Importing only needed parts (from 1mb to 360kb)

import {Observable} from "rxjs/Observable";
import "rxjs/add/operator/map"; //this import statement has side effect of adding map to observable
import "rxjs/add/operator/filter";

let numbers = [1,5,10];
let source = Observable.create(observer=>
    {
        let index = 0;
        let produceValue = ()=>{
            observer.next(numbers[index++]);
            if (index<numbers.length){
                setTimeout(produceValue,250);
            }
            else{
                observer.complete();
            }
        }
        produceValue();
    }
).map(n=>n*2)
    .filter(n=>n>4);

source.subscribe(
    value=>console.log(`value:${value}`),
    e=>console.log(`error: ${e}`),
    ()=>console.log("complete")
);