2016-09-04 22 views
35

Tôi đang cố gắng quấn đầu quanh các quan sát. Tôi thích cách các quan sát giải quyết các vấn đề phát triển và đọc được. Khi tôi đọc, lợi ích là rất lớn.Chuyển đổi lời hứa thành có thể quan sát được

Quan sát trên http và các bộ sưu tập dường như thẳng về phía trước. Làm thế nào tôi có thể chuyển đổi một cái gì đó như thế này để mô hình quan sát được.

Đây là từ thành phần dịch vụ của tôi, để cung cấp xác thực. Tôi thích điều này để làm việc như các dịch vụ http khác trong Angular2 - với sự hỗ trợ cho các trình xử lý dữ liệu, lỗi và hoàn thành.

firebase.auth().createUserWithEmailAndPassword(email, password).then(function(firebaseUser) { 
// do something to update your UI component 
// pass user object to UI component 
}).catch(function(error) { 
// Handle Errors here. 
var errorCode = error.code; 
var errorMessage = error.message; 
// ... 
}); 

Mọi trợ giúp ở đây sẽ được đánh giá cao. Giải pháp thay thế duy nhất tôi có là tạo EventEmitters. Nhưng tôi đoán đó là một cách khủng khiếp để làm những điều trong phần dịch vụ

Trả lời

69

thử điều này:

var subscription = Observable.fromPromise(firebase.auth().createUserWithEmailAndPassword(email, password)); 
subscription.subscribe(firebaseUser => /* Do anything with data received */, 
         error => /* Handle error here */); 

bạn có thể tìm tài liệu tham khảo đầy đủ để fromPromise hành here

+25

'nhập khẩu 'rxjs/thêm/quan sát/fromPromise' ; ' –

+5

' nhập {Observable} từ "rxjs/Observable"; ':) – Luckylooke

Các vấn đề liên quan