2

カスタムオブザーバブルを作成することは可能です(そして正しいです)?たとえば、キャッシュにデータがある場合、http リクエストを行う前にカスタム オブザーバブルを作成したいと思います。

私の要求:

private device: Device;
getDeviceById(deviceId): Observable<Device> {
    if(this.device._id == deviceId) {
        let myObservable = new Observable('with my device'); 
        return myObservable;
    } else return this.http.get('/api/device/get/'+deviceId)
                .map(res => res.json())
                .catch(this.handleError);
}

ありがとう

4

4 に答える 4

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);
于 2016-09-28T11:55:48.690 に答える