【问题标题】:RxJS updated, Property 'merge' does not exist on type 'typeof Observable'RxJS 更新,“typeof Observable”类型上不存在属性“merge”
【发布时间】:2019-03-19 01:52:05
【问题描述】:

我更新了我的材质角度项目,在我的表格中包含一个可扩展的详细信息行。为此,我需要升级到 rsjx 6。现在我收到以下错误。我是 Angular 的新手,所以不幸的是我不知道如何解决这个问题。

Property 'merge' does not exist on type 'typeof Observable'.

谁能帮忙解决这个错误?

app.component.ts

  /** Connect function called by the table to retrieve one stream containing the data to render. */
  connect(): Observable<Track[]> {
    // Listen for any changes in the base data, sorting, filtering, or pagination
    const displayDataChanges = [
    this._exampleDatabase.dataChange,
    this._sort.sortChange,
    this._filterChange,
    this._paginator.page
    ];

    this._exampleDatabase.getAllTracks();

    return Observable.merge(...displayDataChanges).map(() => {
      // Filter data
      this.filteredData = this._exampleDatabase.data.slice().filter((track: Track) => {
        const searchStr = (track.id + track.title + track.artist + track.year + track.comment + track.path).toLowerCase();
        return searchStr.indexOf(this.filter.toLowerCase()) !== -1;
      });

      // Sort filtered data
      const sortedData = this.sortData(this.filteredData.slice());

      // Grab the page's slice of the filtered sorted data.
      const startIndex = this._paginator.pageIndex * this._paginator.pageSize;
      this.renderedData = sortedData.splice(startIndex, this._paginator.pageSize);
      return this.renderedData;
    });
  }

【问题讨论】:

标签: angular rxjs rxjs6


【解决方案1】:

静态 merge 从版本 6 开始导入如下:

import {merge} from 'rxjs'

然后将其用作:

merge(...)

【讨论】:

    【解决方案2】:

    在旧版本的rxjs 中,您使用Observable.merge(...array).map(() =&gt; {});。 对于新版本,即 rxjs 6+,您必须使用以下语法:

    import { merge } from 'rxjs';
    import { map } from 'rxjs/operators';
    
    merge(...array).pipe(
      map(...),
      ...
    );
    

    【讨论】:

      猜你喜欢
      • 2018-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-31
      • 2018-11-25
      • 2019-06-30
      • 1970-01-01
      相关资源
      最近更新 更多