① , 首先引入
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、網(wǎng)絡(luò)空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、蘭山網(wǎng)站維護(hù)、網(wǎng)站推廣。import { Observable } from 'rxjs';
② , 使用setTimeOut來模擬延遲 , 返回Observable對(duì)象句柄
var stream : Observable = new Observable( observer => {
setTimeout( () : void => {
observer.next("okokok");
} , 2000 );
});
③ , 通過Observable對(duì)象句柄 , 獲取異步數(shù)據(jù)
stream.subscribe( (value : string) => {
console.log( value );
} );
④ , 結(jié)果
意思 : 在異步還沒執(zhí)行前 , 撤銷行動(dòng)
引入 :
import { Subscription } from 'rxjs';
① , 接收Subscription句柄
var sub : Subscription = this._stream.subscribe( (value : string) => {
console.log( value );
} );
② , 使用Subscription句柄調(diào)用unsubscribe(),撤銷行動(dòng)
setTimeout( () : void => {
//取消執(zhí)行
sub.unsubscribe();
} , 1500 );
這樣 , 因?yàn)樵?.5S就執(zhí)行了撤銷 , 所以行動(dòng)在2S后觸發(fā)是不會(huì)執(zhí)行的 , 所以不會(huì)打印 "okokok"
將setOutTime改成setInterval
var stream : Observable = new Observable( observer => {
setInterval( () : void => {
observer.next("okokok");
} , 2000 );
});
結(jié)果:
注意 : Angular 6之前請(qǐng)執(zhí)行命令 npm install rxjs-compat
① , 引入
import {map,filter} from 'rxjs/operators';
② , 構(gòu)建異步
var count : number = 0;
var stream : Observable = new Observable( observer => {
setInterval( () : void => {
count ++;
observer.next(count);
} , 2000 );
});
③ , 訂閱改變?nèi)缦?/p>
stream.pipe(
filter( value => value % 2 === 0 ) ,
map( value => { return Math.pow( value , 2 ); } )
).subscribe( value => {
console.log( value );
} );
可以看出 , 在訂閱之前加了一層處理放在pipe中
④ , 結(jié)果
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國(guó)云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。