简单封装一个微信小程序的ajax请求

简单封装一个微信小程序的ajax请求

在微信小程序的项目中,会经常用到wx.request请求,一般请求一多起来,就会非常的繁琐,此时众多繁琐的请求封装到一个js中,顺便将微信小程序中已经封装好的加载层也封装起来,对性能也有些优化。

创建封装的js

1.在项目目录中,创建一个request文件夹,在request文件夹下产检创建一个index.js文件,

// 定义一个同时发送异步请求代码的次数
let ajaxTimes=0;

// 异步请求的封装
export const request=(params)=>{
	// 没发送一次异步请求,就让ajaxTimes+1 确保页面有几次请求
    ajaxTimes++;
    // 显示加载层
    wx.showLoading({
        title: "加载中...",
        mask: true
    });
      
    // 定义公共的url 定义前面相同的url  下面拼接起来
    const baseUrl="https://********"
    return new Promise((resolve,reject)=>{
        wx.request({
        	//es6中的扩展运算符
            ...params,
            // 这里将公共的url和传过来的url后半段拼接起来
            url:baseUrl+params.url;
            success:(result)=>{
                resolve(result);//返回成功数据
            },
            fail:(err)=>{
                reject(err);//返回失败数据
            },
            // 成功失败都会执行complete
            complete:()=>{
            	// 这里的ajaxTimes--是确保一个页面里的请求都结束了才关闭加载层
            	// 如果没有ajaxTimes--if的判断,会加载一条请求后就关闭加载层
                ajaxTimes--;
                if(ajaxTimes===0){
                    // 关闭加载层
                    wx.hideLoading();
                }
            }
        })
    })
}

使用封装的请求

1.在需要发送异步请求的js页面中,引入request/index.js文件

import { request } from "../../request/index";

2.然后就可以使用request方法了

//创建一个方法发送异步请求
getDemoList(){
	request({url:"这里写的是公共url后面的url"})
    .then(result=>{
      this.setData({
        Liet:result.list
      })
    })
}

PS:好了,这就是微信小程序的一个简单封装一个微信小程序的ajax请求

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值