zoukankan      html  css  js  c++  java
  • [RxJS] Creation operators: from, fromArray, fromPromise

    The of() operator essentially converted a list of arguments to an Observable. Since arrays are often how we structure list of things in JavaScript, we should have a way of transforming arrays into Observables. This lesson teaches how you can convert from Arrays to Observables, from Promises to Observables, and from Iterators to Observables.

    formArray:

    var ary = [1,2,3];
    var foo = Rx.Observable.fromArray(ary);
    
    
    foo.subscribe(function (x) {
      console.log('next ' + x);
    }, function (err) {
      console.log('error ' + err);
    }, function () {
      console.log('done');
    });
    
    /*
    "next 1"
    "next 2"
    "next 3"
    "done"
    */

    fromPromise:

    var prom = fetch('https://null.jsbin.com');
    var foo = Rx.Observable.fromPromise(prom);
    
    foo.subscribe(function (x) {
      console.log('next ' + x.status);
    }, function (err) {
      console.log('error ' + err);
    }, function () {
      console.log('done');
    });
    
    /*
    "next 204"
    "done"
    */

    from:

    from() opreator can create observalbes according to what you passed in

    =fromArray:

    var ary = [1,2,3];
    var foo = Rx.Observable.from(ary);
    
    foo.subscribe(function (x) {
      console.log('next ' + x);
    }, function (err) {
      console.log('error ' + err);
    }, function () {
      console.log('done');
    });
    
    /*
    "next 1"
    "next 2"
    "next 3"
    "done"
    */

    =fromPromiose

    var foo = Rx.Observable.from(prom);
    
    foo.subscribe(function (x) {
      console.log('next ' + x.status);
    }, function (err) {
      console.log('error ' + err);
    }, function () {
      console.log('done');
    });

    From iterator:

    function* generator(){
      yield 10;
      yield 20;
      yield 30;
    }
    
    var iterator = generator();
    var foo = Rx.Observable.from(iterator);
    
    foo.subscribe(function (x) {
      console.log('next ' + x);
    }, function (err) {
      console.log('error ' + err);
    }, function () {
      console.log('done');
    });
    
    /*
    "next 10"
    "next 20"
    "next 30"
    "done"
    */
  • 相关阅读:
    docker容器打包、镜像文件导入与导出 , 支持批量
    服务器高并发配置优化
    php集成财付通支付接口
    C# 防界面假死
    以二进制方式读取图片保存到string
    转载 C#开发串口总结,并提炼串口辅助类到公用类库中
    C# comport 打印图像
    C#实现MD5加密
    execute sp_executesql 用变量获取返回值
    C# 获取计算机cpu 硬盘 网卡信息
  • 原文地址:https://www.cnblogs.com/Answer1215/p/5389527.html
Copyright © 2011-2022 走看看