feat 制定eslint规则
This commit is contained in:
0
src/api/home/index.ts
Normal file
0
src/api/home/index.ts
Normal file
54
src/api/request.ts
Normal file
54
src/api/request.ts
Normal file
@@ -0,0 +1,54 @@
|
||||
import type { AxiosRequestConfig, AxiosResponse } from 'axios'
|
||||
import { createUniAppAxiosAdapter } from '@uni-helper/axios-adapter'
|
||||
import axios from 'axios'
|
||||
|
||||
// 创建自定义实例
|
||||
const instance = axios.create({
|
||||
baseURL: 'https://api.example.com', // 你的基础域名
|
||||
timeout: 10000,
|
||||
adapter: createUniAppAxiosAdapter(), // 指定 uniapp 适配器
|
||||
})
|
||||
|
||||
// 请求拦截器(守卫)
|
||||
instance.interceptors.request.use(
|
||||
(config) => {
|
||||
// 例如:在这里统一添加 Token
|
||||
// const token = uni.getStorageSync('token');
|
||||
// if (token) config.headers.Authorization = `Bearer ${token}`;
|
||||
return config
|
||||
},
|
||||
error => Promise.reject(error),
|
||||
)
|
||||
|
||||
// 响应拦截器(守卫)
|
||||
instance.interceptors.response.use(
|
||||
(response: AxiosResponse) => {
|
||||
// 直接返回解包后的 data,这样调用时就不需要写 res.data.data 了
|
||||
return response.data
|
||||
},
|
||||
// (error) => {
|
||||
// // 统一错误处理
|
||||
// uni.showToast({ title: error.message || '请求失败', icon: 'none' })
|
||||
// return Promise.reject(error)
|
||||
// },
|
||||
(error: any) => {
|
||||
let { message } = error
|
||||
if (message === 'Network Error') {
|
||||
message = '后端接口连接异常'
|
||||
}
|
||||
else if (message.includes('timeout')) {
|
||||
message = '系统接口请求超时'
|
||||
}
|
||||
else if (message.includes('Request failed with status code')) {
|
||||
message = `系统接口${message.substr(message.length - 3)}异常`
|
||||
}
|
||||
ElMessage({ message, type: 'error', duration: 5 * 1000 })
|
||||
return Promise.reject(error)
|
||||
},
|
||||
)
|
||||
|
||||
export function request<T = any>(config: AxiosRequestConfig): Promise<T> {
|
||||
return instance(config) as Promise<T>
|
||||
}
|
||||
|
||||
export default instance
|
||||
@@ -1,15 +1,37 @@
|
||||
<script setup lang="ts">
|
||||
import { useDialog } from '@wot-ui/ui'
|
||||
|
||||
import { mockData } from '@/mock/index'
|
||||
|
||||
definePage({
|
||||
layout: false,
|
||||
})
|
||||
|
||||
const dialog = useDialog()
|
||||
|
||||
function openConfirm() {
|
||||
dialog
|
||||
.confirm({
|
||||
title: '提示',
|
||||
msg: '确认执行此操作吗?',
|
||||
})
|
||||
.then(() => {
|
||||
console.log('点击了确认')
|
||||
})
|
||||
.catch(() => {
|
||||
console.log('点击了取消')
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<view>首页</view>
|
||||
<view>消息:{{ mockData.message }}</view>
|
||||
<view>时间:{{ mockData.time }}</view>
|
||||
<wd-dialog />
|
||||
<wd-button @click="openConfirm">
|
||||
打开 Confirm
|
||||
</wd-button>
|
||||
</template>
|
||||
|
||||
<style></style>
|
||||
|
||||
Reference in New Issue
Block a user