Наблюдаемая замена замены в rxjs 5.5.2

Я переношусь на [email protected] и используя операторы lettable... Я также обновляю статические методы Observable. Интересно, что такое аналог Observable.throw и import 'rxjs/add/observable/throw';.

Должен ли я импортировать уродливый _throw?

import { _throw } from 'rxjs/observable/throw';

Или там лучший способ. Честно говоря, мне нравились статические методы на Observable, и теперь кажется, что все статические методы создания, такие как of, from, должны быть импортированы из rxjs/observable/<methodName>?

Ответы

Ответ 1

Я по-прежнему получаю голову вокруг 5.5, но теперь это выглядит теперь вместо импорта throw ErrorObservable.

// import { _throw } from 'rxjs/observable/throw';
import { ErrorObservable } from 'rxjs/observable/ErrorObservable';

ErrorObservable.create('error');

Из этого guide он выглядит как _throw, чтобы избежать столкновения с ключевым словом (остальная часть видео полезно начать с 5.5)

Ответ 2

Да _throw правильный (это будет делать именно то, что написал JayChase, но меньше кода). Вы делаете то же самое с of:

import {of} from 'rxjs/observable/of';
import {_throw} from 'rxjs/observable/throw';

// ...
   // ...
   if (result) {
       return of(result as T);
   } else {
       return _throw('error');
   }
}