vue3+vite实现环境变量配置~

1、作用:在Vite中,我们可以使用环境变量来管理不同环境下的配置。Vite支持使用.env文件来配置环境变量,不同的环境可以使用不同的.env文件来管理配置。

2、创建不同环境的.env文件

在vue3根目录下创建三个文件分别为.env.develoment.env.test.env.production

2.1在不同的.env文件中配置相应的环境变量

.env.develoment
TypeScript 复制代码
NODE_ENV='development'

VUE_APP_OSS_API = '/ossApi'
.env.test
TypeScript 复制代码
NODE_ENV='test'

VITE_APP_API_URL=''
.env.production
TypeScript 复制代码
NODE_ENV='production'

VITE_APP_API_URL='http://iblog.ishareread.com'

这里我们主要通过VITE_APP_API_URL变量来区分不同的环境调用不同的接口,在开发环境调用本地接口http://localhost:8000,在测试环境用mock接口,在生产环境调用真实接口。

3、在vue.config.js文件中配置baseurl。

TypeScript 复制代码
// oss上传
'/ossApi': {
   target: 'baseURL地址', // 目标服务器地址
   changeOrigin: true, // 允许改变 Origin
   ws: true,
   secure: false,
   logLevel: 'debug',
   pathRewrite: {
      '^/ossApi': '', // 重写路径,将 /ossApi 替换为空
   },
},

4、定义类型,在evn.d.ts中

TypeScript 复制代码
/**
 * 环境变量类型声明
 */
declare namespace NodeJS {
  interface Process {
    env: {
      VUE_APP_OSS_API: string;
    };
  }
}

5、api解耦中使用环境变量。

TypeScript 复制代码
const api_rul = import.meta.env.VUE_APP_OSS_API
//const VUE_APP_OSS_API = process.env.VUE_APP_OSS_API;
export function queryAutograph(params) {
  return request({
    url: `${api_rul}/oss/getSign`,
    method: 'get',
    params,
  });
}
相关推荐
Highcharts.js19 小时前
Highcharts跨域数据加载完全指南:JSONP原理与实战
javascript·数据库·开发文档·highcharts·图表开发·跨域数据
L-李俊漩19 小时前
手机端的google chrome 浏览器 怎么看响应的日志和请求报文
前端·chrome·智能手机
明月_清风20 小时前
HTML 早已不是标签了,它现在是系统级接口:这 9 个 API 直接干翻常用 JS 库
前端·html
岱宗夫up20 小时前
【前端基础】HTML + CSS + JavaScript 快速入门
前端·css·html
明月_清风20 小时前
告别后端转换:前端实现 Word & PDF 高性能预览实战
前端
skywalk816320 小时前
electrobun 使用TypeScript构建超快速、小巧且跨平台的桌面应用程序(待续)
前端·javascript·typescript
吴声子夜歌21 小时前
小程序——生命周期函数和事件处理函数
服务器·前端·小程序
薛一半1 天前
React的数据绑定
前端·javascript·react.js
爱看书的小沐1 天前
【小沐杂货铺】基于Three.js渲染三维无人机Drone(WebGL / vue / react )
javascript·vue.js·react.js·无人机·webgl·three.js·drone
天若有情6731 天前
从 try-catch 回调到链式调用:一种更优雅的 async/await 错误处理方案
前端·异常处理·前端开发·async·异步·await·异步编程