新聞中心
這篇文章主要介紹“RxJS怎么使用”,在日常操作中,相信很多人在RxJS怎么使用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”RxJS怎么使用”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
專業(yè)領(lǐng)域包括成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、購物商城網(wǎng)站建設(shè)、微信營銷、系統(tǒng)平臺(tái)開發(fā), 與其他網(wǎng)站設(shè)計(jì)及系統(tǒng)開發(fā)公司不同,創(chuàng)新互聯(lián)的整合解決方案結(jié)合了幫做網(wǎng)絡(luò)品牌建設(shè)經(jīng)驗(yàn)和互聯(lián)網(wǎng)整合營銷的理念,并將策略和執(zhí)行緊密結(jié)合,為客戶提供全網(wǎng)互聯(lián)網(wǎng)整合方案。
RxJS給我們提供了一堆操作符用于處理這些Observable之間的關(guān)系,比如說,我們可以這樣:
const A$ = Observable.interval(1000)
const B$ = Observable.of(3)
const C$ = Observable.from([5, 6, 7])
const D$ = C$.toArray()
.map(arr => arr.reduce((a, b) => a + b), 0)
const E$ = Observable.combineLatest(A$, B$, D$)
.map(arr => arr.reduce((a, b) => a + b), 0)
上述的D就是通過C進(jìn)行一次轉(zhuǎn)換所得到的數(shù)據(jù)管道,而E是把A,B,D進(jìn)行拼裝之后得到的數(shù)據(jù)管道,
A ------> | B ------> | -> E C -> D -> |
從以上的示意圖就可以看出它們之間的組合關(guān)系,通過這種方式,我們可以描述出業(yè)務(wù)邏輯的組合關(guān)系,把每個(gè)小粒度的業(yè)務(wù)封裝到數(shù)據(jù)管道中,然后對它們進(jìn)行組裝,拼裝出整體邏輯來。
我們知道,現(xiàn)在主流的MV*框架都基于一個(gè)共同的理念:MDV(模型驅(qū)動(dòng)視圖),在這個(gè)理念下,一切對于視圖的變更,首先都應(yīng)當(dāng)是模型的變更,然后通過模型和視圖的映射關(guān)系,自動(dòng)同步過去。
在這個(gè)過程中,我們可能會(huì)需要通過一些方式定義這種關(guān)系,比如Angular和Vue中的模板,React中的JSX等等。
在這些體系中,如果要使用RxJS的Observable,都非常簡單:
data$.subscribe(data => { // 這里根據(jù)所使用的視圖庫,用不同的方式響應(yīng)數(shù)據(jù)
// 如果是 React 或者 Vue,手動(dòng)把這個(gè)往 state 或者 data 設(shè)置
// 如果是 Angular 2,可以不用這步,直接把 Observable 用 async pipe
綁定到視圖
// 如果是 CycleJS ……})
到此,關(guān)于“RxJS怎么使用”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
分享名稱:RxJS怎么使用
標(biāo)題URL:http://www.ef60e0e.cn/article/pjdejs.html