2017-08-18 53 views
0

几天来,我一直试图使用.next方法来添加数据。 在尝试这样的:错误使用.next方法

messages: Observable<Message[]>; 
const newMessage = new Message(objMessage); 
messages.next(newMessage); 

我有这样的错误:

Property 'next' does not exist on type 'Observable<Message[]>'. 

是否。接下来方法以及工作中可观察到的数据流?

回答

3

函数next不是Observable上的函数。这是Observer上的一个功能。

您可以使用一个Subject,它同时充当Observer和Observable。因此,像这样:

const messages = new Subject<Message[]>(); 
const newMessage = new Message(objMessage); 
messages.next([newMessage]); 

当你有Message一个数组,你也可以选择使用next与数组。

欲了解更多信息:http://reactivex.io/documentation/subject.html

+0

好的,谢谢。你知道是否有像_.next_这样的方法,但对于Observable? 将数据添加到流,例如消息集合。 – Floriane

+0

是的,也许你可以使用主题。查看更新的答案。 – englund

+0

以下是我所做的:'消息:主题 =新主题(); const newMessage = new Message(objMessage); this.messages.next([newMessage]);' 但是,我的消息变量一次只包含一条消息。 – Floriane