黑马程序员技术交流社区

标题: 【郑州校区】前端笔记Vue项目 第4天 8 [打印本页]

作者: 我是楠楠    时间: 2020-3-30 14:22
标题: 【郑州校区】前端笔记Vue项目 第4天 8
【郑州校区】前端笔记Vue项目 第4天 8
async  和 await


async作为一个关键字放到函数前面


任何一个async函数都会隐式返回一个promise


await关键字只能在使用async定义的函数中使用


​    await后面可以直接跟一个 Promise实例对象


​     await函数不能单独使用


async/await 让异步代码看起来、表现起来更像同步代码
[AppleScript] 纯文本查看 复制代码
# 1.  async 基础用法

    # 1.1 async作为一个关键字放到函数前面

    async function queryData() {

      # 1.2 await关键字只能在使用async定义的函数中使用      await后面可以直接跟一个 Promise实例对象

      var ret = await new Promise(function(resolve, reject){

        setTimeout(function(){

          resolve('nihao')

        },1000);

      })

      // console.log(ret.data)

      return ret;

    }

    # 1.3 任何一个async函数都会隐式返回一个promise   我们可以使用then 进行链式编程

    queryData().then(function(data){

      console.log(data)

    })



    #2.  async    函数处理多个异步函数

    axios.defaults.baseURL = 'http://localhost:3000';



    async function queryData() {

      # 2.1  添加await之后 当前的await 返回结果之后才会执行后面的代码   

      

      var info = await axios.get('async1');

      #2.2  让异步代码看起来、表现起来更像同步代码

      var ret = await axios.get('async2?info=' + info.data);

      return ret.data;

    }



    queryData().then(function(data){

      console.log(data)

    })








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2