當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript observable.Observable類代碼示例

本文整理匯總了TypeScript中rxjs/internal/observable.Observable的典型用法代碼示例。如果您正苦於以下問題:TypeScript Observable類的具體用法?TypeScript Observable怎麽用?TypeScript Observable使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了Observable類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: findLocationId

    findLocationId(city: string): Observable<City[]> {
        const uri = 'https://api.buienradar.nl/data/search/1.0/?query=' + city + '&country=BE&locale=nl-BE';
        const result$: Observable<AxiosResponse> = this.httpService.get(uri);

        return Observable.create((obs) => {
            const cities: City[] = [];
            result$.subscribe((data: AxiosResponse) => {
                    const dataIndex: number = data.data.length > 1 ? (data.data.length - 1) : 0;
                    if (data.data.length > 0) {
                        for (const singleCity of data.data[dataIndex].results) {
                            const uriPieces: string[] = singleCity.uri.split('/');
                            cities.push(new City(Number(uriPieces[uriPieces.length - 1]), singleCity.main, singleCity.sub));
                        }
                    }
                }, (error) => {
                    console.log(error);
                },
                () => {
                    obs.next(cities);
                    obs.complete();
                });
        });
    }
開發者ID:beele,項目名稱:WeatherGenieV2-Backend,代碼行數:23,代碼來源:buienradar.service.ts

示例2: City

 return Observable.create((obs) => {
     const cities: City[] = [];
     result$.subscribe((data: AxiosResponse) => {
             const dataIndex: number = data.data.length > 1 ? (data.data.length - 1) : 0;
             if (data.data.length > 0) {
                 for (const singleCity of data.data[dataIndex].results) {
                     const uriPieces: string[] = singleCity.uri.split('/');
                     cities.push(new City(Number(uriPieces[uriPieces.length - 1]), singleCity.main, singleCity.sub));
                 }
             }
         }, (error) => {
             console.log(error);
         },
         () => {
             obs.next(cities);
             obs.complete();
         });
 });
開發者ID:beele,項目名稱:WeatherGenieV2-Backend,代碼行數:18,代碼來源:buienradar.service.ts

示例3: subscribe

 return RxJS.Observable.create(function subscribe(obs) {
     input.subscribe(val => obs.next(val * 10),
         err => obs.error(err),
         () => obs.complete()
     );
 });
開發者ID:MarcoLeko,項目名稱:async-patterns,代碼行數:6,代碼來源:introduction.ts

示例4: setTimeout

import {Observable} from 'rxjs/internal/Observable';
import {filter, map, publish, reduce, shareReplay} from 'rxjs/operators';
import {Observer} from 'rxjs/internal/types';
import {ConnectableObservable} from 'rxjs/internal/observable/ConnectableObservable';

const observer: Observer<number> = {
    next: x => console.log('Value: ', x),
    error: err => console.error('Error occurred: ', err),
    complete: () => console.log('Done!')
};

const alias: Observable<number> = RxJS.Observable.create((obs) => {
    obs.next(1);
    obs.next(2);
    obs.next(3);
    setTimeout(() => {
        obs.next(4);
        obs.complete();
    }, 1000);
});

console.log('Before subscribe');
alias.subscribe(observer);
console.log('After subscribe');


/*** unicast vs multicast **/
const randomNumber = new Observable<number>(obs => {
    obs.next(Math.random());
});
開發者ID:MarcoLeko,項目名稱:async-patterns,代碼行數:30,代碼來源:introduction.ts


注:本文中的rxjs/internal/observable.Observable類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。