Nodejs让异步变成同步的方法
异步给我们带来的性能是明显的,但同时也给我们带了复杂的业务逻辑过程,特别请求依赖多的时候,下面我们来看看如何解决此类这样的问题。
使用方法
在这里我们信赖于co这个库。
npm install co --save
#or
yarn add co
模拟
# 登录请求
let loginReq = new Promise((resolve,reject)=>{
setTimeout(function () {
resolve({success:true})
},2000)
});
# 获取用户信息
let userInfoReq = new Promise((resolve,reject)=>{
setTimeout(function () {
resolve({nickName:'dounine'})
},2000)
});
# 异步处理过程
loginReq.then(res=>{
if(res.success){
userInfoReq.then(userInfo=>{
console.log('获取成功')
## 如果还有信赖,需要继续写,还没有逻辑业务参与
})
}
})
# 同步处理过程
co(function *(){
let loginInfo = yield loginReq;
if(loginInfo.success){
let userInfo = yield userInfoReq;
console.log('获取成功')
}
})
总结
以上是 Nodejs让异步变成同步的方法 的全部内容, 来源链接: utcz.com/z/323903.html