全栈的自我修养 ———— uniapp中封装api请求

api

js 复制代码
import request from '@/tools/request'
export function login(loginMessage) {
    return request({
        url: '/login',
        data: loginMessage,
        loading: true
    })
}

request

js 复制代码
// request
const urlArr = {
    'DEV': 'http://localhost:6060', // 开发
    'PRO': 'https://域名:6060', // 生产
}

let BASEURL = urlArr['DEV'] // 调整当前环境

export default item => {
    if (item.loading) {
        uni.showLoading({
            title: "加载中",
            mask: true
        });
    }
    return new Promise((resolve, reject) => {
        uni.request({
            url: BASEURL + item.url,
            method: item.method ? item.method : 'post',
            data: item.data,
            headers: item.headers ? item.headers : { "Content-Type": "application/json" },
            timeout: 20000,
            success(response) {
                resolve(response.data);
            },
            fail(err) {
                uni.showToast({
                    icon: "none",
                    title: '服务响应失败'
                });
                reject(err);
            },
            complete() {
                uni.hideLoading();
            }
        });
    })
};

使用

js 复制代码
import { login,sendCaptcha } from '@/api/login.js'
const res = await login(params)
相关推荐
SuperEugene4 分钟前
Day.js API 不包含插件API的速查表
前端·javascript·面试
Mr -老鬼4 分钟前
RustSalvo框架上传文件接口(带参数)400错误解决方案
java·前端·python
前端 贾公子9 分钟前
Vue3 组件库的设计和实现原理(上)
javascript·vue.js·ecmascript
zheshiyangyang15 分钟前
前端面试基础知识整理【Day-9】
前端·面试·职场和发展
笨蛋不要掉眼泪20 分钟前
Sentinel 热点参数限流实战:精准控制秒杀接口的流量洪峰
java·前端·分布式·spring·sentinel
Rhystt39 分钟前
furryCTF题解|Web方向|ezmd5、猫猫最后的复仇
android·前端·web安全·web
Hello.Reader1 小时前
Tauri 前端配置把任何前端框架“正确地”接进 Tauri(含 Vite/Next/Nuxt/Qwik/SvelteKit/Leptos/Trunk)
前端·前端框架
明月_清风1 小时前
浏览器时间管理大师:深度拆解 5 大核心调度 API
前端·javascript
明月_清风1 小时前
你不知道的 JS——现代系统级 API 篇
前端·javascript
咕噜咕噜啦啦9 小时前
Vue3响应式开发
前端·javascript·vue.js