объединитьПоследний не рекомендуется в пользу статического комбинатаПоследний - PullRequest
0 голосов
/ 10 мая 2018

После запуска инструмента миграции rxjs с помощью

rxjs-5-to-6-migrate -p src / tsconfig.app.json

Теперь я получаю сообщение об ошибке:

объединитьПоследний устарел: устарел в пользу статического combineLatest.

Вот мой код перед запуском команды миграции:

this.store.combineLatest(
        this.store.select(lang.getCurrent),
        this.store.select(lang.getCurrentLocale)
    ).subscribe(([state, currentLang, locale]) => {
        this._language = session.language === currentLang ? '' : currentLang;
        this._locale = session.locale === locale ? '' : locale;
    });

Мой код после запуска команды миграции: (в настоящее время отображается ошибка linting)

import {map, combineLatest} from 'rxjs/operators';
this.store.combineLatest(
        this.store.select(lang.getCurrent),
        this.store.select(lang.getCurrentLocale)
    ).subscribe(([state, currentLang, locale]) => {
        this._language = session.language === currentLang ? '' : currentLang;
        this._locale = session.locale === locale ? '' : locale;
    });

Этот вопрос был задан в вопросах о стеке потока, но он не был достаточно конкретным: Угловые повторяющиеся ошибки и предупреждения в размере 6 нг lint, combLatest устарел .

Ответы [ 3 ]

0 голосов
/ 03 апреля 2019

rxjs версия 6.4.0

, и вы должны импортировать оператор карты из операторов RxJs, и это будет работать

combineLatest(a$, b$, c$).pipe(map([a, b, c]) => treat(a, b, c))
0 голосов
/ 19 мая 2019

В rxjs 6,5

import { combineLatest } from 'rxjs';
combineLatest([a$, b$, c$])

0 голосов
/ 10 мая 2018

Я нашел ответ в этой статье под названием: RxJS 6: что нового и что изменилось? (что исходит из официальных документов ):

Решение заключается в преобразовании:

import { combineLatest } from 'rxjs/operators';

a$.pipe(combineLatest(b$, c$));

в

import { combineLatest } from 'rxjs';

combineLatest(a$, b$, c$);
...