zoukankan      html  css  js  c++  java
  • 使用ES6的Promise完美解决回调地狱

    //创建一个Promise实例,获取数据。并把数据传递给处理函数resolve和reject。需要注意的是Promise在声明的时候就执行了。
    var getUserList=new Promise(function(resolve,reject){
         $.ajax({
         type:"get",
         url:"http://vueshop.glbuys.com/api/home/index/slide?token=1ec949a15fb709370f",//第一次请求
         success:function(data){
             resolve(data);
         },
         error:function(error){
             reject(error)
         }
         });
        })
        
            var getUserInfo=function(user){
                return new Promise(function(resolve,reject){
                    console.log(user) //得到了上一个请求的用户id,下面根据用户id进行详情请求
                 $.ajax({
                 type:"get",
                 url:"http://vueshop.glbuys.com/api/home/index/slide?token=1ec949a15fb709370f?id="+user,//第二次请求想要的数据;
                 success:function(data){
                     resolve(data);
                 },
                 error:function(error){
                     reject(error)
                 }
                 });
                })
            }
            getUserList.then(function(data){
                var userid = JSON.parse(data).data[2].webs  //调试的id存贮
                return getUserInfo(userid)
            }).then((datas)=>{
                console.log(datas)
            })
  • 相关阅读:
    字符数组(判断字符串大小)
    http请求文件流
    webservice接口调用
    面试基础-线程(一)
    面试基础-redis(二)
    面试基础-redis(一)
    面试基础--JVM
    【转】支付系统
    springcloud搭建高可用注册中心的时候注册中心在unavailable-replicas中的问题
    springboot+javafx所有依赖一起打包
  • 原文地址:https://www.cnblogs.com/huaifeidejiushu/p/9035189.html
Copyright © 2011-2022 走看看