Đăng ký một Observable
Nếu như đã quen thuộc với Promise, bạn sẽ biết rằng chúng ta sẽ nhận được một kết quả từ promise, bằng cách gọi hàm then. Hàm then có 2 tham số một giá trị là function cái mà sẽ gọi khi promise hoàn thành thành công và một error function khi promise đó gặp bất kỳ lỗi nào. Như ví dụ minh hoạ dưới đây:

Nếu chúng ta định nghĩa x là một observable thay cho promise, chúng ta đơn giản chỉ cần thay đổi then thành subscribe. Vì observable xử lý nhiều giá trị theo thời gian, nên hàm valueFn được gọi mỗi khi observable emit. Trong một số trường hợp, chúng ta muốn biết khi nào observable chạy xong, chúng ta thêm completeFn vào tham số thứ 3 của hàm subscribe. Hàm này sẽ được gọi khi observable chạy xong. Hàm subscribe có giá trị trả về là một subscription, chúng ta có thể sử dụng subscription để gọi unsubscribe và huỷ bỏ subscription nếu cần.
Bây giờ hãy quay lại với ứng dụng demo của chúng ta, chúng ta đã có một productService ở bài trước. Và lúc này chúng ta sẽ sử dụng nó để lấy những sản phẩm từ back-end service.

Như đã biết, hàm getProducts mà chúng ta viết trả về cho chúng ta một observable. Và một observable sẽ không chạy cho đến khi chúng ta subscribe chúng. Như đoạn code trên, danh sách sản phẩm sẽ được gán khi mà back-end service trả về giá trị cho productService, lúc này observable sẽ emit gía trị nhận được cho nơi mà mó subscribe.
Last updated