Как импортировать таймер rxjs в angular 6?

Я попытался импортировать таймер rxjs в свой angular проект, например,

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

Я тоже так пробовал,

Rx.Observable.timer(200, 100)

Они не работают

Вот код на плунжере

Ответ 1

Из rxjs 6 (как используется в проекте angular 6), общее правило таково:

  • rxjs: методы создания, типы, планировщики и утилиты

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

  • rxjs/operator: все конвейерные операторы:

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

Вот руководство по миграции: https://github.com/ReactiveX/rxjs/blob/master/MIGRATION.md#observable-classes

Ответ 2

Все наблюдаемые классы (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)
  )

Forked Example

Смотрите также

Ответ 3

с версии 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

Ответ 4

В моем случае я использовал import {timer} из 'rxjs/Observable/timer'; нравится.

но нужно использовать в импорте {timer} из 'rxjs/observable/timer'; Наблюдаемый вместо наблюдаемого.

что все... наслаждайся твоим кодированием.