Автономный конкат не возвращает наблюдаемого

Я пытаюсь понять новые наблюдаемые (rxjs) с точки зрения операторов lettable. Для этого у меня есть следующий код

        const messagesToDispatch = concat(
            of({ type: 'REGITERING_USER' }).delay(5000),
            of({ type: 'REGISTER_USER_COMPLETE', value })
        ).pipe();

        messagesToDispatch.subscribe(subValue => {
            console.log(subValue);
        });

Теперь, когда я запускаю код, я получаю следующую ошибку

messagesToDispatch.subscribe is not a function

Однако, когда я пытаюсь следующее, это работает

    concatMap(value => {
        const messagesToDispatch = Observable.concat(
            of({ type: 'REGITERING_USER' }).delay(5000),
            of({ type: 'REGISTER_USER_COMPLETE', value })
        );

        messagesToDispatch.subscribe(subValue => {
            console.log(subValue);
        });

Обратите внимание, что я использовал Observable.concat вместо concat. Я не уверен, что здесь происходит.

1 ответ

Решение

Вам нужно импортировать concat как в RxJS6, если вы хотите запустить свой код без ошибок:

import {concat, of} from 'rxjs';

const messagesToDispatch = concat(
            of({ type: 'REGITERING_USER' }).pipe(delay(5000)),
            of({ type: 'REGISTER_USER_COMPLETE', value })
        );

Также обратите внимание, как pipe используется.

Другие вопросы по тегам