根據官方的文檔,我可以用一個主題是這樣的: docs如何解釋RxJS除有人用角1.X背景
不過,我覺得這是一個相當的理論解釋。
我在Angular 1.X中有很強的背景。
有人可以通過將它與Angular 1.X中的內容進行比較來描述我,概念「主體」嗎?
根據官方的文檔,我可以用一個主題是這樣的: docs如何解釋RxJS除有人用角1.X背景
不過,我覺得這是一個相當的理論解釋。
我在Angular 1.X中有很強的背景。
有人可以通過將它與Angular 1.X中的內容進行比較來描述我,概念「主體」嗎?
$ q.defer()非常接近。
澄清,2等份的代碼。
//written with $q.defer()
function doWorkAsync() {
var defer;
defer = $q.defer();
getStuff().then(function() {
defer.resolve('finished here');
}
return defer.promise;
}
...
doWorkAsync().then(showResults);
//written with subject()
function doWorkAsync() : Observable<string> {
let subject$ = new AsyncSubject<string>();
getStuff().then(function() {
subject$.next('finished here');
subject$.complete();
}
return subject$;
}
...
doWorkAsync().subscribe(showResults);
總結:
defer.promise〜=觀察到。
defer.resolve & & defer.reject〜= 觀察者。
我發現這個解釋相當不錯:
可觀察到的是等,其中的元素及時到達延遲陣列。
您可以使用運營商,如.forEach()
和.map()
(和其他人)。
它還具有相似之處Promise
,但可以在subscribe()
(類似於then()
發射0以上的值,但只要求傳遞給then()
一旦回調,而傳遞給subscribe()
回調可以多次調用發射極解析觀察到的前)。
主題,在某種程度上,就像使者。
王國向使者發送消息,通知其盟友在其邊界發生攻擊。盟友告訴信使,他們會派出軍隊幫忙。
回來更技術性的語言:
主題是雙向變量。您可以通過subscribe
來接收它更新時的更新,並通過調用next
並更改變量並傳遞參數。
我不認爲它與AngularJS的東西具有可比性。這是新的,我會建議閱讀網站上的介紹。 http://reactivex.io/intro.html – koningdavid