美文网首页
异步递归:callBack 回调实现

异步递归:callBack 回调实现

作者: webmrxu | 来源:发表于2020-11-22 18:17 被阅读0次
const privateKey = '高德地图key';
const axios = require('axios')
const keywords = '美食|面包'
const adCityCode = '110000'


let allData = [] // 保存每一页数据
serach(1)

function serach(page) {
  getOnePageData(page, (res) => {
    console.log(page, res)
    allData.concat(res.data)
    if (res.nexPage) {
      page = page + 1;
      serach(page) // 递归调用搜索,异步
    }
  })
}

// 异步获取一页数据
function getOnePageData(page, callBack, pageSize = 20) {
  let url = 'https://restapi.amap.com/v3/place/text'
  axios.get(url, {
        params: {
            key: privateKey,
            city: adCityCode,
            keywords: keywords,
            citylimit: true,
            offset: pageSize,
            page: page
        }
    }).then(res => {
        if (res.data.pois && res.data.pois.length > 0) {
            callBack({
        data: res.data.pois,
        nexPage: true
      })
        } else {
      callBack({
        nexPage: false
      })
    }
    })
}

相关文章

  • 异步递归:callBack 回调实现

  • 07_Node.js Event

    一、回调函数 callback 1、回调函数 Node.js 异步编程的直接体现就是回调,异步编程依托于回调来实现...

  • 回调

    1. 同步回调 Callback Server Client 运行结果 2. 异步回调 Callback同上 Se...

  • async/awiat 实例详解

    背景: 异步回调:callback hellPromise than catch 链式调用,也是基于回调函数.as...

  • Promise异步编程机制一知半解

    promise的诞生是为了解决callback回调异步编程的回调金字塔得出现,实现单向队列的事件排列,方便维护。 ...

  • JS异步-解决方法简述

    介绍三种异步处理方案: 回调函数(callback)promiseasync/await 回调函数(callbac...

  • 回调,同步异步

    nodejs学习笔记 标签:node 异步 回调 单线程 1. callback 最简单的回调 注意回调的理解:...

  • js异步

    JS 异步来一波小总结 1. 回调函数(callback) ** 缺点:回调地狱,不能用 try catch 捕获...

  • 小程序中异步处理的几种方式对比

    异步处理方式 1.异步处理的几种方式 纯粹的异步回调函数callback promise方法 (async,awa...

  • 回调地狱问题

    一、什么是回调地狱(Callback Hell)? “回调地域”指的是,多级的异步的嵌套调用的问题。 举个例子:1...

网友评论

      本文标题:异步递归:callBack 回调实现

      本文链接:https://www.haomeiwen.com/subject/tlzuiktx.html