vue3(vite)设置代理封装axios api解耦功能

 更新时间:2022年12月26日 15:19:50   作者:微光无限  
这篇文章主要介绍了vue3(vite)设置代理封装axios api解耦,本文结合示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

一、设置代理

打开根目录下的vite.config.js文件,设置代理

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
 
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  // 设置代理
  server: {
    proxy: {
      '/api': 'xxx'
    }
  }
})

 二、axios封装

先下载axios

npm install axios -S

在根目录下新建utils/request.js,简单封装axios

import axios from 'axios';
 
//1. 创建axios对象
const service = axios.create();
 
//2. 请求拦截器
service.interceptors.request.use(config => {
  return config;
}, error => {
  Promise.reject(error);
});
 
//3. 响应拦截器
service.interceptors.response.use(response => {
  //判断code码
  return response.data;
},error => {
  return Promise.reject(error);
});
 
export default service;

三、api文件

在utils文件夹下创建文件夹api创建courseManage.js文件

import request from './request'
 
export function Fun( data ){
	return request({
		url:'xxx',
		method:"post",
		data
	})
}

四、安装unplugin-auto-import插件(vite版本)

npm i unplugin-auto-import -D

打开vite.config.js中配置unplugin-auto-import

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
 
// 引入unplugin-auto-import/vite插件
import AutoImport from 'unplugin-auto-import/vite'
 
// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue(),
  AutoImport({
    imports: ['vue', 'vue-router']//自动导入vue和vue-router相关函数
  })
  ],
  // 设置代理
  server: {
    proxy: {
      '/api': 'http://testapi.xuexiluxian.cn'
    }
  }
})

到此这篇关于vue3(vite)设置代理封装axios api解耦的文章就介绍到这了,更多相关vue3 vite设置代理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue3使用Vite打包组件库从0搭建过程详解

    vue3使用Vite打包组件库从0搭建过程详解

    这篇文章主要为大家介绍了vue3使用Vite打包组件库从0搭建过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • vue中内嵌iframe的src更新页面未刷新问题及解决

    vue中内嵌iframe的src更新页面未刷新问题及解决

    这篇文章主要介绍了vue中内嵌iframe的src更新页面未刷新问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • vite+vue3搭建的工程热更新失效问题及解决

    vite+vue3搭建的工程热更新失效问题及解决

    这篇文章主要介绍了vite+vue3搭建的工程热更新失效问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • 解决vue-cli脚手架打包后vendor文件过大的问题

    解决vue-cli脚手架打包后vendor文件过大的问题

    今天小编就为大家分享一篇解决vue-cli脚手架打包后vendor文件过大的问题。具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • ​​​​​​​基于el-table和el-pagination实现数据的分页效果

    ​​​​​​​基于el-table和el-pagination实现数据的分页效果

    本文主要介绍了​​​​​​​基于el-table和el-pagination实现数据的分页效果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • vue 跳转到其他页面并关闭当前页面的实现代码

    vue 跳转到其他页面并关闭当前页面的实现代码

    我在做一个调用虚拟机录屏的一个操作,需要在浏览器页面上,点击按钮后,关闭当前页面里的某一个页面,并且打开浏览器新页面是虚拟机的页面,本文给大家介绍vue 跳转到其他页面并关闭当前页面的实现代码,感兴趣的朋友一起看看吧
    2023-09-09
  • vue关闭浏览器退出登录的实现示例

    vue关闭浏览器退出登录的实现示例

    本文主要介绍了vue关闭浏览器退出登录,一般都是根据根据beforeunload和unload这两个事件执行的。本文就详细的介绍一下如何实现,感兴趣的可以了解一下
    2021-12-12
  • vue封装的Tag标签双击编辑单击选中可删除

    vue封装的Tag标签双击编辑单击选中可删除

    项目中需要制作一个双击编辑单击选中可删除Tag标签,本文就来介绍一下如何实现,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • 详解Vue3中Teleport的使用

    详解Vue3中Teleport的使用

    门户(Portal)的概念是Vue3的新功能之一,也就是将模板 HTML 移至 DOM 的不同部分的方法。Portal 是 React 中的常见功能,Vue2 的 portal-vue  库也提供了相似的功能。在 Vue3 中用 Teleport 对这个概念提供了原生支持。本文将介绍Teleport的相关用法
    2021-05-05
  • 实现vue图片缩放方式-拖拽组件

    实现vue图片缩放方式-拖拽组件

    这篇文章主要介绍了实现vue图片缩放方式-拖拽组件,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04

最新评论