Вопросы с тегом «rxjs»

127
Свойство catch не существует для типа Observable <any>

На странице документации Angular 2 для использования службы Http есть пример. getHeroes (): Observable<Stuff[]> { return this.http.get(this.url) .map(this.extractData) .catch(this.handleError); } Я клонировал проект angular2-webpack-starter и сам добавил приведенный выше код. Я импортировал,...

124
Тема vs BehaviorSubject vs ReplaySubject в Angular

Я хотел понять эти 3: Предмет , поведение субъект и субъект Replay . Я хотел бы использовать их и знать, когда и почему, каковы преимущества их использования, и хотя я читал документацию, смотрел учебные пособия и искал в Google, я не смог понять этого. Так в чем их цель? Было бы очень полезно...

113
Redux и RxJS, есть ли сходства?

Я знаю, что Redux - лучшая «реализация» Flux, или, точнее говоря, это редизайн для упрощения вещей (управление состоянием приложения). Я много слышал о реактивном программировании (RxJS), но еще не погрузился в его изучение. Итак, мой вопрос: есть ли пересечение (что-то общее) между этими двумя...

113
Что такое «ад обратных вызовов» и как и почему RX решает эту проблему?

Может ли кто-нибудь дать четкое определение вместе с простым примером, объясняющим, что такое «ад обратных вызовов» для тех, кто не знает JavaScript и node.js? Когда (в каких настройках) возникает "проблема с обратным вызовом"? Почему это происходит? Всегда ли «ад обратных вызовов» связан с...

111
Как я могу `await` на Rx Observable?

Я бы хотел дождаться наблюдаемого, например const source = Rx.Observable.create(/* ... */) //... await source; Наивная попытка приводит к немедленному разрешению ожидания и не блокирует выполнение Изменить: псевдокод для моего полного предполагаемого варианта использования: if (condition) { await...

110
Что такое функция pipe () в Angular

Каналы - это фильтры для преобразования данных (форматов) в шаблоне. Я наткнулся на pipe()функцию, как показано ниже. Что pipe()именно означает эта функция в данном случае? return this.http.get<Hero>(url) .pipe( tap(_ => this.log(`fetched hero id=${id}`)),...

106
Наблюдаемый, наконец, при подписке

В соответствии с этим artcle , onCompleteи onErrorфункции subscribeявляются взаимоисключающими. Значение либо onErrorили onCompleteсобытия будут стрелять в моих subscribe. У меня есть логический блок, который должен выполняться независимо от того, получаю ли я сообщение об ошибке или успешно...

104
Angular 4+ ngOnDestroy () в эксплуатации - уничтожить наблюдаемое

В приложении angular у нас есть ngOnDestroy()ловушка жизненного цикла для компонента / директивы, и мы используем эту ловушку для отмены подписки на наблюдаемые. Я хочу очистить / уничтожить наблюдаемые объекты, созданные в @injectable()службе. Я видел несколько сообщений, в которых говорилось,...

104
Для чего нужен pipe в rxJS

Я думаю, что у меня есть базовая концепция, но есть некоторые неясности В общем, я использую наблюдаемое: observable.subscribe(x => { }) Если я хочу отфильтровать данные, я могу использовать это: import { first, last, map, reduce, find, skipWhile } from 'rxjs/operators'; observable.pipe( map(x...

98
Как вернуть значение из функции, внутри которой есть подписка на Observable?

Я не знаю, как извлечь значение из Observable, которое будет возвращено функцией, в которой присутствует Observable. Мне нужно вернуть только его значение, ничего больше. Текущая версия, которая работает function getValueFromObservable() { this.store.subscribe( (data:any) => { console.log(data)...

96
Цепочка наблюдаемых RxJS из данных http в Angular2 с помощью TypeScript

В настоящее время я пытаюсь научиться Angular2 и TypeScript после того, как успешно работал с AngularJS 1. * в течение последних 4 лет! Я должен признать, что ненавижу это, но я уверен, что момент моей эврики не за горами ... в любом случае, я написал службу в своем фиктивном приложении, которое...

94
Почему нам нужно использовать flatMap?

Я начинаю использовать RxJS и не понимаю, почему в этом примере нам нужно использовать такую ​​функцию, как flatMapили concatAll; где здесь массив массивов? var requestStream = Rx.Observable.just('https://api.github.com/users'); var responseMetastream = requestStream .flatMap(function(requestUrl)...

94
Подписка устарела: используйте наблюдателя вместо обратного вызова ошибки

Когда я запускаю линтер, он говорит: subscribe is deprecated: Use an observer instead of an error callback Код (из приложения angular 7 с angular-cli): this.userService.updateUser(data).pipe( tap(() => {bla bla bla}) ).subscribe( this.handleUpdateResponse.bind(this), this.handleError.bind(this)...

90
Ошибка rxjs / Subject.d.ts: класс Subject <T> неправильно расширяет базовый класс Observable <T>

Я извлек образец кода шаблона из этого руководства и сделал два следующих шага, чтобы начать работу: npm install // worked fine and created node_modules folder with all dependencies npm start // не удалось с ошибкой ниже - node_modules/rxjs/Subject.d.ts(16,22): error TS2415: Class...

87
Когда использовать asObservable () в rxjs?

Мне интересно, в чем польза asObservable: Согласно документам: Наблюдаемая последовательность, которая скрывает идентичность исходной последовательности. Но зачем вам скрывать последовательность?...

87
Поведение Promise.all с помощью RxJS Observables?

В Angular 1.x мне иногда приходилось делать несколько httpзапросов и что-то делать со всеми ответами. Я бы бросил все обещания в массив и позвонил Promise.all(promises).then(function (results) {...}). Лучшие практики Angular 2, похоже, указывают на использование RxJS Observableв качестве замены...

86
Rxjs: Observable.combineLatest против Observable.forkJoin

Просто интересно, в чем разница между Observable.combineLatestи Observable.forkJoin? Насколько я понимаю, единственная разница заключается в том, forkJoinчто Observables должны быть завершены, а combineLatestвозвращать последние значения....