RXJS

Sources

30 天精通 RxJS by Jerry Hong

Note

  • 什麼是 Functional Programming ?
  • Functional Programming 重要特性
    • Functional Programming 都是 表達式 (Expression) 不會是 陳述式(Statement)。
    • Pure function 是指 一個 function 給予相同的參數,永遠會回傳相同的返回值,並且沒有任何顯著的副作用(Side Effect)
  • 一個核心三個重點
    • Observable
    • Observer
    • Subject
    • Schedulers
  • Marble diagrams
    • Streaming ----------------
    • Error ----------------X
    • Complete----------------|
    • Sync (oooo)|
    • http://rxmarbles.com/
  • Operators

    • map

    • mapTo

    • filter

    • merge 的用法,它的邏輯就像是 OR(||)一樣,可以把多個 observable 合併且同時處理,當其中任合一個 observable 送出元素時,我們都做相同的處理。

        source : ----0----1----2|
        source2: --0--1--2--3--4--5|
                merge()
        example: --0-01--21-3--(24)--5|
      
    • buffer 直到對象的Observable排出前,都先緩存。直到對象Observable排出,才將緩存排出。

        source : --0--1--2--3--4--5--6--7..
        source2: ---------0---------1--------...
                buffer(source2)
        example: ---------([0,1,2])---------([3,4,5])
      
    • bufferCount 直接指定緩存的數量

    • bufferTime 直接指定緩存的時間

    • distinct 檢查是否有重複,如有重複則不排出

    • distinctUntilChanged 只檢查跟最後一個排出是否有重複,如有重複則不排出

    • catch

    • retry 直接指定重試次數

    • retryWhen 直接指定重試時間

    • cancatAll 後面一個Observable必須等前一個Observable排出Complete事件後,才執行

    • switch 後面一個Observable直接取代前一個Observable,並開始排出

    • mergeAll 同一個時間點的所有Observable一起排出

results matching ""

    No results matching ""