我对Observables很新。我如何从一个简单的字符串创建Observable?然后订阅它并在它改变时输出它。
这有意义吗?
谷歌搜索我没有运气。可能错误的关键字?
添加一些代码以获得更好的解释:
My constructor on service
constructor() {
// Create observable stream to output our data
this.notice = Observable.create(
(observer) => this.observer = observer;
);
};
My method on service
set(string) {
this.notice.subscribe((value) => {
// Push the new value into the observable stream
this.observer.next(string);
}, (error) => console.log('Could not set data.'));
}
Calling service method
setNotice(event) {
event.preventDefault();
// Calling service to set notice
this.noticeService.set('This is a string');
}
我想我在这里做错了什么?但不知道该怎么问。我将不胜感激任何解释。
答案 0 :(得分:14)
您可以使用of
类的Observable
方法:
var obs = Observable.of('some string');
修改强>
关于您的服务代码,我会重构您set
方法的代码:
set(string) {
this.observer.next(string);
}
您可以订阅应用程序其他部分的notice
属性以获得通知。