我知道通過定義時可觀察到的是完成或者它有一個錯誤成爲冷,你不能傳遞數據給它。 因此,如果您想在錯誤之後傳遞數據,則需要創建一個新的Observable。
我只是想知道,如果你以某種方式可以錯誤後恢復觀察的,因爲它使更多的意義對我來說,這不是恢復到創建一個新的具有相同的功能?Rxjs錯誤後,通過數據可觀察
例:
const subject = new Rx.Subject();
subject.subscribe(
data => console.log(data),
error => console.log('error')
);
subject.next('new data');
subject.next('new data2');
subject.error('error');
subject.next('new data3');
的新DATA3不會發送,因爲在此之前有一個錯誤。
工作例如:https://jsbin.com/sizinovude/edit?js,console
PS:我想用戶有錯誤,也後發送數據,看起來像是唯一的方法是創建一個新的觀察到的,訂閱錯誤後的新一個。
因此,可以說,你想要一個http請求重試按鈕,當它要創建一個新的請求的錯誤。爲此,您無法將更多數據傳遞給該Observable,您需要創建一個新的數據並訂閱該數據? – tibbus
重新訂閱發出錯誤的觀察值。這就是[retry](http://reactivex.io/rxjs/class/es6/Observable.js~Observable.html#instance-method-retry)運算符所做的事情。 – cartant