当前位置: 首页 > news >正文

建网站找兴田德润陕西新闻最新消息今天

建网站找兴田德润,陕西新闻最新消息今天,网站上地图是怎样做的,网站建设 迅雷下载仓库地址:https://github.com/buguniao5213/LuArch 1、安装axios npm install axios2、创建文件 先创建一个文件夹: ├── src/ │ ├── api/ │ │ ├── index.ts/ #编写axios封装代码 │ │ └── example.ts/ #定义…

仓库地址:https://github.com/buguniao5213/LuArch

1、安装axios

npm install axios

2、创建文件

先创建一个文件夹:

├── src/
│   ├── api/        
│   │   ├── index.ts/   #编写axios封装代码    
│   │   └── example.ts/ #定义向后端服务器发送请求的模块`
├── publix/
│   ├── json/        
│   │   └── example.json/   #模拟get接口获取到的数据`

3、导入申明

导入axios库和相关类型

import axios, { type AxiosInstance, type AxiosRequestConfig } from 'axios';

4、基础url定义

这个后面放到vite的缓建变量配置中(.env)

const BASE_URL = '/'

5、定义request类

要素如下:

export class Request {private instance: AxiosInstance;private baseConfig: AxiosRequestConfig = { baseURL: BASE_URL, timeout: 60000 };public constructor() {//...    }public request() {//...    }public get() {//...    }//...//...
}

a)、private instance:私有属性instance:Axios实例

b)、private baseConfig:基本配置,包括基础URL和超时时间

c)、public constructor:构造函数

创建Axios实例,合并基本配置和传入配置

设置请求拦截器:可以添加token等认证信息

设置响应拦截器:处理相应数据,根据状态码决定返回数据或报错误信息

d)、请求方法设置:

request:通用请求方法。

get:GET请求方法。

post: POST 请求方法

put: PUT 请求方法

delete: DELETE 请求方法

完整代码如下:

index.ts:

export class Request {private instance: AxiosInstance;private baseConfig: AxiosRequestConfig = { baseURL: BASE_URL, timeout: 60000 };public constructor(config: AxiosRequestConfig) {this.instance = axios.create(Object.assign(this.baseConfig, config));this.instance.interceptors.request.use((config: any) => {// 配置处理逻辑// const token = 'tokentoken';return config;},(error: any) => {return Promise.reject(error);})this.instance.interceptors.response.use((res: any) => {if(res.data.code === 200) {return res.data.data;}else {// 错误code处理return "发生错误";}},(error: any) => {return Promise.reject(error);})}public request<T = any>(config: AxiosRequestConfig): Promise<T> {return this.instance.request(config);}public get<T = any>(url: string, params?: any, config?: AxiosRequestConfig): Promise<T> {return this.instance.get(url, {params, ...config});}public post<T = any>(url: string, data?: any, config?: AxiosRequestConfig): Promise<T> {return this.instance.post(url, data, config);}public put<T = any>(url: string, data?: any, config?: AxiosRequestConfig): Promise<T> {return this.instance.put(url, data, config)}public delete<T = any>(url: string, params?: any, config?: AxiosRequestConfig): Promise<T> {return this.instance.delete(url, {params, ...config});}}

6、创建实例,并导出为Axios

export const Axios = new Request({baseURL: BASE_URL,
});

7、使用

a)、封装一个HTTP请求

example.ts:

import { Axios } from '@/api'export function HTLLOWORD() {return Axios.get<any>('/json/example.json')
}

example.json:

{   "code": 200,"data": "hello word"
}

b)、调用

import { HTLLOWORD } from '@/api/example'const getTest = () => {HTLLOWORD().then(res => {console.log(res)})
}getTest();
http://www.yayakq.cn/news/245607/

相关文章:

  • 深圳建立企业网站局网站建设管理制度
  • wordpress网站设置关键词设置wordpress回收站在哪里
  • 个人网站的前途办公oa系统大概多少钱
  • 昆山网站建设哪家便宜网站空间域名维护协议
  • 网站怎么挣钱网页设计定制代理
  • tp5网站文档归档怎么做主题猫仿虎嗅wordpress
  • 建网站空间的详细说明wordpress 导入xml
  • 网站建设方案文档wordpress文件上传路径在哪修改
  • 门户网站建设的平台搭建php企业网站后台管理系统
  • 软件设计师网站有哪些wordpress 获取菜单项
  • 微信自动加人软件免费企业关键词优化最新报价
  • 建立企业网站几天网站排名优化首页
  • 衡水做企业网站python语言基础知识
  • 企业网站建设合同书盖章页国人经典wordpress主题liveo
  • 科普网站建设的支持力度wordpress 修改导航
  • dedecms 网站根目录厂房网
  • 视频网站备案免费设计图
  • 360网站做推广企业建网站平台
  • 厦门微网站建设公司哪家好传奇游戏网页
  • 怎么在百度做免费推广百度关键词相关性优化软件
  • 台州网站公司吗企业建站系统
  • ps2017做网站阿里云虚拟主机建网站
  • 网站建设模板后台北京建设网站圣辉友联
  • 网站开发项目进度表自己做的网站怎么设置信息必填
  • 重庆亮哥做网站拥有自己的网站
  • 做网站开发学什么软件wordpress做教育网站
  • 西安网站seo公司未来5年网络规划设计师
  • 免费的求职简历模板网站顺企网查企业
  • 深圳网站关键词排名wordpress数据库发布文章
  • 网站建设基础 ppt甘肃兰州区号