Carmineprince's Blog
首页
    • HTML
    • CSS
    • JavaScript
    • Vue
    • React
    • TypeScript
    • Node
    • Flutter
    • Electron
    • Python
    • 运维
    • 重学前端
  • 分类
  • 标签
  • 归档

Ziqi Wang

胡思乱想程序员
首页
    • HTML
    • CSS
    • JavaScript
    • Vue
    • React
    • TypeScript
    • Node
    • Flutter
    • Electron
    • Python
    • 运维
    • 重学前端
  • 分类
  • 标签
  • 归档
  • 从0开始搭建一套规范的Vue3.x项目工程环境
  • 解决vite构建vue3项目报错
  • 解决Vue3中无法使用$ref的问题
  • 项目中手动增加scss支持
  • el-table多选分页保留
  • 解决npm run dev启动两个页面问题
  • PC端和移动端兼容方案
  • SFC-Use-script-setup
  • vue2x面试前回炉重造
  • Vue3+Vite2配置
    • 一、环境变量配置
      • 开发环境
      • 生产环境
      • 在项目中使用
    • 二、`vite.config.js`配置
    • 三、搭配`axios`配置`baseURL`
    • 四、启动、打包命令配置`package.json`
  • flvjs+vue 视频播放(手动追帧、断开重连、多个视频同时直播)
  • vue平滑滚动到指定位置
  • vant项目使用postcss-pxtorem和amfe-flexible 进行移动端适配
  • vue 使用v-html绑定时,内部元素不会继承外部css的解决方案
  • vue-awesome-swiper缩略图控制循环无效解决方案
  • 如何在Vue项目中优雅的使用svg图标
  • yarn报错及解决方案
  • vue3+ts+vite移动端vw适配方案
  • Vue项目中增加mockjs模拟接口请求
  • Nuxt相关

  • Vue3思考及跟Vue2相比的新变化总结
  • Vue相关
carmineprince
2021-10-20

Vue3+Vite2配置

# Vue3+Vite2配置

[TOC]

# 一、环境变量配置

# 开发环境

项目根目录创建.env.development文件

  • .env.development
NODE_ENV=development

VITE_APP_WEB_URL=https://www.xxx.com/api
1
2
3

# 生产环境

项目根目录创建.env.production

  • .env.production
NODE_ENV=production
  
VITE_APP_WEB_URL=https://www.xxx.com/api
1
2
3

# 在项目中使用

import.meta.env.VITE_APP_WEB_URL
1

# 二、vite.config.js配置

import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
// 如果编辑器提示 path 模块找不到,则可以安装一下 @types/node -> npm i @types/node -D
import { resolve } from 'path'

// https://vitejs.dev/config/
export default ({ mode }) => {
  return defineConfig({
    plugins: [vue()],
    resolve: {
      alias: {
        '@': resolve(__dirname, 'src') // 设置 `@` 指向 `src` 目录
      }
    },
    base: './', // 设置打包路径
    server: {
      host: '0.0.0.0', // 解决项目启动后use `--host` to expose没有将f
      port: 4000, // 设置服务启动端口号
      open: true, // 设置服务启动时是否自动打开浏览器
      cors: true // 允许跨域

      // 设置代理,根据我们项目实际情况配置
      // proxy: {
      //   '/api': {
      //     target: loadEnv(mode, process.cwd()).VITE_APP_WEB_URL,
      //     changeOrigin: true,
      //     secure: false,
      //     rewrite: (path) => path.replace(/^\/api/, '/api')
      //   }
      // }
    }
  })
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

# 三、搭配axios配置baseURL

/**
 * 如果是开发环境不设置baseUrl,通过proxy设置代理进行重写
 * 生产环境下从.env.production中取出VITE_APP_WEB_URL进行配置
 */
const baseURL = <string>import.meta.env.MODE === 'development' ? '' :<string>import.meta.env.VITE_APP_WEB_URL

const axios = Axios.create({
  baseURL,
  withCredentials: true,
  timeout: 20000 // 请求超时 20s
})
1
2
3
4
5
6
7
8
9
10
11

# 四、启动、打包命令配置package.json

...
"scripts": {
    "dev": "vite",
    "test": "vite --mode test",
    "prod": "vite --mode production",
    "build": "vite build",
    "build:dev": "vite build --mode development",
    "build:test": "vite build --mode test",
    "serve": "vite preview",
    "prepare": "husky install"
 },
 ...
1
2
3
4
5
6
7
8
9
10
11
12

执行命令:

// 启动服务
npm run dev 	// 启动开发环境接口地址
npm run test 	// 启动测试环境接口地址
npm run prod 	// 启动生产环境接口地址

// 打包
npm run build 		// 打包到生产环境
npm run build:test	// 打包到测试环境
npm run build:dev 	// 打包到开发环境
1
2
3
4
5
6
7
8
9
#vue3#vite#配置
上次更新: 10/21/2021, 1:52:09 PM
vue2x面试前回炉重造
flvjs+vue 视频播放(手动追帧、断开重连、多个视频同时直播)

← vue2x面试前回炉重造 flvjs+vue 视频播放(手动追帧、断开重连、多个视频同时直播)→

最近更新
01
pc端rem配置
03-02
02
使用动态变量ts报错的解决
02-25
03
React Hook详解
02-18
更多文章>
Theme by Vdoing | Copyright © 2021-2022 Carmineprince | 鲁ICP备2021046263号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式