【问题标题】:How to solve "Observable.share is not a function" Angular 2如何解决“Observable.share 不是函数”Angular 2
【发布时间】:2018-02-05 11:37:38
【问题描述】:

我在 ionic 2 中使用缓存结构。我定义了一个可观察数组。我在这里记录从服务器返回的数据。但每次这个形状都给我一个错误。我该如何解决?

 marketArray : Observable<any>; /* GLOBAL */   this.http.get(this.base_url,header).map(res=>res.json()).subscribe(data=>{
      loader.dismissAll();
      this.marketArray = this.cache.loadFromObservable(this.base_url, data["Table"]);
      
    }, (error)=>{
      loader.dismissAll();
      this.marketler();
    });

【问题讨论】:

  • 请将您的解决方案放在答案中,而不是将其编辑到您的问题中。
  • 这个sn-p给出的错误不是标题中描述的错误。
  • @Can Kurucu 我刚刚将您的解决方案发布为Community Wiki(这使我无法获得任何荣誉)。如果您想收到任何对答案的投票,请单独发布您的答案,我将删除我发布的答案。

标签: angular typescript ionic-framework


【解决方案1】:

import "rxjs/add/operator/share"; 添加到源文件的开头。

(编辑:导入路径已修复,如 cmets 中指出的那样 - 谢谢!)

【讨论】:

  • 是的,我添加了。但问题仍然存在“observable.share 不是函数”
  • 好的!它是“导入'rxjs/add/operator/share';” (“添加”部分在错误的位置)。 :-)
【解决方案2】:

原帖由Can Kurucu:

我解决了这个问题

let req = this.http.get(this.base_url, header).map(res=>res.json());
this.marketArray = this.cache.loadFromObservable(this.base_url, req);

【讨论】:

    【解决方案3】:

    如果你在较新版本的 RxJs 中得到这个,那么 import 语句应该是:

    import { share } from 'rxjs/operators';
    

    【讨论】:

      猜你喜欢
      • 2018-03-11
      • 2019-05-19
      • 2019-10-31
      • 2020-06-21
      • 2017-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-21
      相关资源
      最近更新 更多