[英]How to declare an observable on angular2
我如何聲明一個可觀察對象以及如何在angular2中向它添加數據? 我有5個小時試圖弄清楚該怎么做。
我嘗試了
this.products : Observable<array>;
var object = {"item":item};
this.products.subscribe(object)
我嘗試的一切都會讓我出錯
我想使用它,因為我有一個經常更改的對象數組,並且在模板中ngFor不會更改值。 有什么幫助嗎?
http://pastebin.com/1cFXJHHk這是我嘗試做的
@pixelbits提供了一個很好的答案,描述了使用原始可觀察物的方式。
但是我認為您誤解了可觀察性和反應式編程是什么。 您可以看一下這份出色的入門指南:
所述subscribe
obersables的方法允許注冊通知回調:
當然,您可以利用事件在列表中添加元素,但是我不確定這是您的用例:
var someList = [];
let observable = (...)
observable.subscribe(data => {
someList.push(data);
});
這對於基於事件的工具/技術(例如WebSockets,Firebase等)特別有用。 此答案可以為您提供有關如何使用Firebase實施此操作的更多詳細信息:
如果要創建一個Observable(冷),則可以使用create方法:
myEvent:Rx.Observable<{item:Item}>;
myObserver: Rx.Observer<{item:Item}>;
constructor() {
this.myEvent = Rx.Observable.create(o=>this.myObserver = o);
}
someEvent() {
// do something
var $event = {item:new Item()};
// emit the event object when something interesting happens
if(this.myObserver)
this.myObserver.emit($event);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.