文章目录
一、 Rxjs
1. 常见的异步编程及对比
目前常见的异步编程的几种方法:
- 回调函数事件
- 监听/发布订阅
- Promise
- Rxjs
// 同步
getData(){
var data='zhangsan';
return data;
}
// 下面是异步
1.1 回调函数获取异步数据
// service.ts
getCallBackData(){
①
② setTimeout(()=>{
④ var data='zhangsan';
return data;
},1000);
③
}
// conmponent.ts
var callBackData=this.service.getCallBackData()
执行顺序 :① ② ③ ④ 所以外部获得的callBackData是undefined
那么 该如何获取的到呢? 用回调函数
// service.ts
getCallBackData(cb){
// 传入一个cb
setTimeout(()=>{
var data='zhangsan';
cb(data);
},1000);
}
// conmponent.ts
this.service.getCallBackData((data)=>
console.log(data)
)