创建自定义observable是否可能(并且正确)? 例如,如果我的缓存中有数据,我想在发出http请求之前创建自定义observable:
我的要求:
ctrl + }
感谢' S
答案 0 :(得分:0)
是的,您可以按照答案http://50.112.30.188/socket.io/?EIO=3&transport=polling&t=1475061508132-0中的说明创建一个可以观察的主题,并在缓存中有数据时使用它。
答案 1 :(得分:0)
您可以执行以下操作:
getDeviceById(deviceId): Observable<Device> {
if(this.authProvider == deviceId) {
return Observable.create(observer => {
observer.next("something");
observer.complete();
});
} else return this.http.get('/api/device/get/'+deviceId)
.map(res => res.json())
.catch(this.handleError);
答案 2 :(得分:0)
你可以这样做:
var button = document.querySelector('button');
var subscription = Rx.Observable.create(function(obs) {
button.onclick = function(event) {
obs.next(event);
}
.subscribe(function(value) {
console.log(value);
},);
在该链接中查看更多内容:http://reactivex.io/documentation/operators/create.html