web-dev-qa-db-ja.com

angular 6にrxjsタイマーをインポートする方法は?

私のangular 6プロジェクトにrxjsタイマーをインポートしてみました

import { timer } from 'rxjs/observable/timer';

私も試してみました、

Rx.Observable.timer(200, 100)

彼らは動作しません

以下は plunker のコードです

17
anonymous

Rxjs 6(angular 6プロジェクトで使用)から、一般的なルールは次のとおりです。

  • rxjs:作成方法、タイプ、スケジューラー、ユーティリティ

    import { timer, Observable, Subject, asapScheduler, pipe, of, from, interval, merge, fromEvent } from 'rxjs';

  • rxjs/operators:すべてのパイプ可能な演算子:

    import { map, filter, scan } from 'rxjs/operators';

移行ガイドは次のとおりです。 https://github.com/ReactiveX/rxjs/blob/master/MIGRATION.md#observable-classes

21
ashfaq.p

監視可能なすべてのクラス( https://github.com/ReactiveX/rxjs/tree/5.5.8/src/observable )は、同じことを実行する既存または新規の演算子を優先して、v6から削除されましたクラスメソッドとしての操作。

import { timer } from 'rxjs';
import { timeInterval, pluck, take} from 'rxjs/operators';

var sourcef = timer(200, 100)
  .pipe(
    timeInterval(),
    pluck('interval'),
    take(3)
  )

分岐した例

こちらもご覧ください

17
yurzui

このインポートの場合、rxjs 6.2.2以降

import { timer } from 'rxjs';   // gives tslint blacklisted error

tslintはエラーを返します:

ERR: [tslint] This import is blacklisted, 
import a submodule instead (import-blacklist)

ただし、これはエラーなしで正常に動作します

import { timer } from 'rxjs/observable/timer'; //works fine

2
Nitin Jadhav