Vue3中vite.config.js文件相关配置和mock数据配置
创始人
2024-02-11 09:14:42

文章目录

  • 1. vite.config.js文件相关配置
  • 2. 路径别名
  • 3. mock数据配置


1. vite.config.js文件相关配置

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'
import path from 'path'// https://vitejs.dev/config/
export default defineConfig({// 插件,vue就是以插件的方式集成到vite工具中plugins: [vue(), vueJsx({// 默认只对扩展名为 .jsx/.tsx 进行babel解析// 需要需要它解析.vue扩展名下面的jsx// include: /\.[jt]sx/// include: /\.[jt]sx|vue/})],// 添加别名resolve: {alias: {'@': path.resolve('src')}},server: {// 配置端口port: 8080,// 自动打开浏览器open: false,// 通过配置开发时,代理服务器,在开发时进行跨域解决proxy: {'/api': {target: 'https://api.iynn.cn/film',// 改变请求头源地址changeOrigin: true,// 重写,如果目标地址中存在 /api,就将 /api 替换为空字符串// rewrite: path => path.replace(/^\/api/, '')// rewrite: path => { }}}}
})

上面已经完成了跨域相关的配置,现在我们来试着发起网络请求。

父组件:


子组件:


除了上面的配置方法以外,我们还可以将网络配置添加到开发环境中,就像下面这样:

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'
import path from 'path'// export default defineConfig((command, mode, ssrBuild) => {
export default defineConfig(({ mode }) => {let config = {plugins: [vue(), vueJsx()],// 添加别名resolve: {alias: {'@': path.resolve('src')}}}// 开发环境中添加网络代理if ('development' === mode) {// 开发环境config = {...config,server: {// 配置端口port: 8080,// 自动打开浏览器open: false,// 通过配置开发时,代理服务器,在开发时进行跨域解决proxy: {'/api': {target: 'https://api.iynn.cn/film',changeOrigin: true}}}}}return config
})

在这里插入图片描述

2. 路径别名

在 vite.config.js 中配置:

import { resolve } from 'path'export default defineConfig({resolve: {alias: {'@': resolve('src')}}
})

在 jsconfig.json 或 tsconfig.json 中配置:

{ "compilerOptions": {"baseUrl": "./","paths": {"@/*": ["src/*"]}},"exclude": ["node_modules", "dist"]
}

3. mock数据配置

安装:

yarn add vite-plugin-mock mockjs -D

在 vite.config.js 中配置:

import { viteMockServe } from 'vite-plugin-mock'export default defineConfig({plugins: [vue(), viteMockServe({})],
})

在项目根目录下面创建目录 mock,创建文件 mock/index.js:

import Mockjs from 'mockjs'const mockData = [{url: '/api/films',method: 'get',response: ({ query }) => {const data = Mockjs.mock({'films|10': [{"filmId|+1": 1,'name': '@cname'}]})return {code: 0,msg: 'ok',data}}}
]export default mockData

App.vue:


在这里插入图片描述

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...