RxJS - Son Güncellemeler

Bu eğitimde RxJS sürüm 6'yı kullanıyoruz. RxJS genellikle reaktif programlama ile uğraşmak için kullanılır ve Angular, ReactJS ile daha sık kullanılır. Angular 6 varsayılan olarak rxjs6'yı yükler.

RxJS sürüm 5, sürüm 6'ya kıyasla farklı şekilde ele alındı. RxJS 5'inizi 6'ya güncellemeniz durumunda kod kırılacaktır. Bu bölümde, sürüm güncellemesini işleme yöntemlerindeki farkı göreceğiz.

RxJS'yi 6'ya güncelliyorsanız ve kod değişiklikleri yapmak istemiyorsanız, bunu da yapabilirsiniz ve aşağıdaki paketi yüklemeniz gerekecektir.

npm install --save-dev rxjs-compact

Bu paket, geriye dönük uyumluluk sağlamaya özen gösterecek ve eski kod, RxJS sürüm 6 ile sorunsuz çalışacaktır. RxJS 6 ile düzgün çalışan kod değişikliklerini yapmak istiyorsanız, yapılması gereken değişiklikler şunlardır.

Operatörler, gözlemlenebilirler, konu paketleri yeniden yapılandırılmış ve bu nedenle ithalatta önemli değişiklikler yapılmış ve aşağıda açıklanmıştır.

Operatörler için ithalat

Sürüm 5'e göre, operatörler için aşağıdaki ithalat ifadeleri dahil edilmelidir -

import 'rxjs/add/operator/mapTo'
import 'rxjs/add/operator/take'
import 'rxjs/add/operator/tap'
import 'rxjs/add/operator/map'

RxJS sürüm 6'da içe aktarmalar aşağıdaki gibi olacaktır -

import {mapTo, take, tap, map} from "rxjs/operators"

Gözlemlenebilirler oluşturmak için Yöntemleri İçe Aktarma

Sürüm 5'e göre, Gözlemlenebilirler ile çalışırken, aşağıdaki içe aktarma yöntemleri dahil edilmelidir -

import "rxjs/add/observable/from";
import "rxjs/add/observable/of";
import "rxjs/add/observable/fromEvent";
import "rxjs/add/observable/interval";

RxJS sürüm 6'da içe aktarmalar aşağıdaki gibi olacaktır -

import {from, of, fromEvent, interval} from 'rxjs';

Gözlemlenebilirlerin İçe Aktarımı

RxJS sürüm 5'te, Observables ile çalışırken, aşağıdaki içe aktarma ifadeleri dahil edilmelidir -

import { Observable } from 'rxjs/Observable'

RxJS sürüm 6'da, içe aktarmalar aşağıdaki gibi olacaktır -

import { Observable } from 'rxjs'

Konunun İçe Aktarımı

RxJS sürüm 5'te konu aşağıdaki gibi dahil edilmelidir -

import { Subject} from 'rxjs/Subject'

RxJS sürüm 6'da, içe aktarmalar aşağıdaki gibi olacaktır -

import { Subject } from 'rxjs'

RxJS 6'da operatörler nasıl kullanılır?

pipe() methodoluşturulan gözlemlenebilir üzerinde mevcuttur. RxJS'ye 5.5 sürümünden eklenmiştir. Pipe () kullanarak artık sıralı sırayla birden çok operatör üzerinde çalışabilirsiniz. RxJS sürüm 5'te operatörler bu şekilde kullanılmıştır.

Misal

import "rxjs/add/observable/from";
import 'rxjs/add/operator/max'

let list1 = [1, 6, 15, 10, 58, 2, 40];
from(list1).max((a,b)=>a-b).subscribe(x => console.log("The Max value is "+x));

RxJS sürüm 5.5'ten itibaren, operatörü çalıştırmak için boru () kullanmalıyız -

Misal

import { from } from 'rxjs';
import { max } from 'rxjs/operators';

from(list1).pipe(max((a,b)=>a-b)).subscribe(x => console.log(
   "The Max value is "+x)
);

Operatörler Yeniden Adlandırıldı

Paketlerin yeniden yapılandırılması sırasında bazı operatörler, javascript anahtar kelimeleriyle çakıştıklarından veya eşleştiklerinden yeniden adlandırıldı. Liste aşağıda gösterildiği gibidir -

Şebeke Olarak yeniden adlandırıldı
yapmak() dokunmak()
tutmak() catchError ()
değiştirmek() switchAll ()
en sonunda() Sonuçlandırmak()
atmak() throwError ()