Использование в 5.4
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/of';
import 'rxjs/add/operator/filter';
import 'rxjs/add/operator/map';
Observable.of(1, 2, 3)
.filter(x => x % 2 === 0)
.map(x => x + x)
.subscribe(x => console.log(x));
Использование в 5.5
import { of } from 'rxjs/observable/of';
import { filter, map } from 'rxjs/operators';
of(1, 2, 3).pipe(
filter(x => x % 2 === 0)
map(x => x + x)
).subscribe(x => console.log(x));
Зачем использовать pipeable operators?
- Tree-shakable. Операторы, которые являются частью прототипа Observable и не используются в коде, во время сборки не удаляются webpack'ом или другим бандлером.
- Упрощается создание собственных операторов
- Транспайлеры и линтеры предлагает больше подсказок
Pipeable Operators