Nodejs让异步变成同步的方法

 更新时间:2019年03月02日 11:12:03   作者:dounine  
今天小编就为大家分享一篇关于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('获取成功')
 }
})

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • Node.js创建HTTP文件服务器的使用示例

    Node.js创建HTTP文件服务器的使用示例

    我们的目的比较简单,使用Node.js创建一个HTTP协议的文件服务器,你可以使用浏览器或其它下载工具到文件服务器上下载文件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • 手把手教你实现 Promise的使用方法

    手把手教你实现 Promise的使用方法

    这篇文章主要介绍了手把手教你实现 Promise的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Nodejs Docker镜像体积优化实践详解

    Nodejs Docker镜像体积优化实践详解

    这篇文章主要为大家介绍了Nodejs Docker镜像体积优化实践示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • nodejs中各种加密算法的实现详解

    nodejs中各种加密算法的实现详解

    这篇文章主要给大家介绍了关于nodejs中各种加密算法的实现方法,文中通过示例代码介绍的非常详细,对大家学习或者使用nodejs具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • Node.js巧妙实现Web应用代码热更新

    Node.js巧妙实现Web应用代码热更新

    本文给大家讲解的是Node.js的代码热更新的问题,其主要实现原理 是怎么对 module 对象做处理,也就是手工监听文件修改, 然后清楚模块缓存, 重新挂载模块,思路清晰考虑细致, 虽然有点冗余代码,但还是推荐给大家
    2015-10-10
  • node puppeteer(headless chrome)实现网站登录

    node puppeteer(headless chrome)实现网站登录

    这篇文章主要介绍了node puppeteer(headless chrome)实现网站登录,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • node.js学习总结之调式代码的方法

    node.js学习总结之调式代码的方法

    调式代码很多时候类似于查案一样,只是结果的重要程度不同,警察查案为的是人民安稳,而我们调式则是为了系统的安稳。既然这样我们就不要冤枉任何一段代码和程序,以免他们受到不合理的惩罚。
    2014-06-06
  • 使用npm命令提示: ''npm'' 不是内部或外部命令,也不是可运行的程序的处理方法

    使用npm命令提示: ''npm'' 不是内部或外部命令,也不是可运行的程序的处理方法

    这篇文章主要介绍了使用npm命令提示: 'npm' 不是内部或外部命令,也不是可运行的程序,本文通过图文并茂的形式给大家分享解决方案,需要的朋友可以参考下
    2020-05-05
  • Node.js API详解之 dgram模块用法实例分析

    Node.js API详解之 dgram模块用法实例分析

    这篇文章主要介绍了Node.js API详解之 dgram模块用法,结合实例形式分析了Node.js API中dgram模块基本功能、函数、使用方法及操作注意事项,需要的朋友可以参考下
    2020-06-06
  • Node.js查找当前目录下文件夹实例代码

    Node.js查找当前目录下文件夹实例代码

    本篇文章主要介绍了Node.js查找当前目录下文件夹实例代码,具有一定的参考价值,有兴趣的可以了解一下。
    2017-03-03

最新评论