Угловой 6 throttleTime не существует в Rx Js - PullRequest
0 голосов
/ 02 сентября 2018

Я использую angular/cli": "~6.1.5 и rxjs": "^6.0.0 Поскольку я новичок в Angular 6, я начал учиться на официальном документе

http://reactivex.io/rxjs/class/es6/Observable.js~Observable.html

код ниже

var clicks = Rx.Observable.fromEvent(document, 'click');
var result = clicks.throttleTime(1000);
result.subscribe(x => console.log(x));

Тот же код, который я пробовал в угловых 6

fromEvent(mybuttonId, 'click')
      .subscribe((event) => console.log('clicked'));

Но если я добавлю .throttleTime (1000) к событию from, это выдаст ошибку

Свойство 'throttleTime' не существует для типа 'Наблюдаемый

''.

если я пытаюсь добавить Observable.fromEvent, тогда этот метод не существует

Я импортировал Rx js как

import {Observable, fromEvent, from, of} from 'rxjs';
import {throttleTime} from 'rxjs/operators';

Может ли кто-нибудь помочь мне, где я могу найти точный документ для последней версии.

Спасибо

Ответы [ 2 ]

0 голосов
/ 02 сентября 2018

Спасибо Сиддхарту Аджмере за подсказку по использованию трубы. В последней версии RX JS мы можем сделать, как показано ниже

 fromEvent(this.hoverSection, 'click')
      .pipe(throttleTime(1000))
      .subscribe((event) => console.log('clicked'));
0 голосов
/ 02 сентября 2018

Он может быть передан в Observable следующим образом:

import { fromEvent } from 'rxjs';
import { throttleTime } from 'rxjs/operators';

subscription = fromEvent(document, 'click')
               .pipe(throttleTime(1000))
               .subscribe(x => console.log(x));

Вы можете найти его в Официальных документах здесь:

fromEvent | throttleTime

Также убедитесь, что unsubscribe от subscription, чтобы избежать утечек памяти. Как правило, это делается в ngOnDestroy

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...