zoukankan      html  css  js  c++  java
  • 利用Promise封装jquery ajax

    一、源码

    ;(function ($) {
      let request = function(url,method,params,body=false){

        return
    new Promise((resolve, reject) =>{ let aj = { url: url, method:method, dataType:'json', success(returnData) { resolve(returnData); }, error(error){ reject(error); } }; if (body == true){ aj.contentType = 'application/json';
              if(params){
                aj.data = JSON.stringify(params);
              } }else {
              if(params){ aj.data
    = params;
              } } $.ajax(aj); }); } window.$ajax
    = { get(url,params){ return request(url,'GET',params); }, post(url,params,body=true){ return request(url,'POST',params,body); }, put(url,params,body=true){ return request(url,'PUT',params,body); }, delete(url,params,body=true){ return request(url,'DELETE',params,body); } } })(jQuery);

    二、使用

    let api = '请求地址';
    //查询
    let params = {
         name:"张三",
         age:21 
    };
    
    $ajax.get(api,params).then(returnData => {
          console.log(returnData);
    }).catch(error => {
          console.log(error);
    })
    
    
    //根据id获取
    let id = "记录id";
    $ajax.get(api+'/'+id).then(returnData => {
          console.log(returnData);
    }).catch(error => {
          console.log(error);
    });
    
    
    //修改实体
    let form= {
         id:id,
         name:"李四",
         age:21 
    };
    $ajax.put(api,form).then(returnData => {
          console.log(returnData);
    }).catch(error => {
           console.log(error);
    })
    
    
    //添加实体
    let form= {
         name:"王五",
         age:18
    };
    $ajax.post(api,form).then(returnData => {
          console.log(returnData);
    }).catch(error => {
          console.log(error);
    })
    
    
    //删除
    let list = [1,2,3]; //id列表
    $ajax.delete(api,list).then(returnData => {
          console.log(returnData);
    }).catch(error => {
          console.log(error);
    });
  • 相关阅读:
    MySQL数据库中的delete语句
    记录Jmeter集成Jenkins运行Ant做接口监听
    测试数据随机生成器(离线)
    python正则表达式
    字典、数据结构化
    python复制、浅拷贝、深拷贝
    python-list:列表-元组-字符串
    自动部署shell(结合Jenkins)
    linux问题记录
    Python操作excel
  • 原文地址:https://www.cnblogs.com/xiaogblog/p/13730737.html
Copyright © 2011-2022 走看看