开发日记14-vite配置多环境

为什么要配置多环境,因为开发的时候,获取后端数据的baseUrl是不一样的,端口也可能不一样。所以我们要配置一下,以便于以后切换。这里举个例子:

我们在web目录下,新增一个.env文件,将目前调取后端数据用到的base url配置上

复制代码
VITE_SERVER=http://localhost:18000

再配置一个生产时用到的文件.env.prod,暂时就改一个端口意思意思

复制代码
VITE_SERVER=http://localhost:18001

如果还有测试,还可以增加.env.test,这里不多赘述

为了让vite能找到,可以增加配置/data/wz/JavaProject/im-nls/web/package.json

复制代码
  "scripts": {
    "dev": "vite",
    "prod": "vite --mode=prod",
    "build": "vite build",
    "preview": "vite preview"
  },

这里新增了一个 "prod": "vite --mode=prod", 在打包的时候,会自动寻找prod结尾的文件,引入其中的所有变量。

我们在main.js中这样引入,使得axios在get或者post请求的时候,隐式的添加baseUrl前缀

复制代码
axios.defaults.baseURL = import.meta.env.VITE_SERVER

就可以这样了:

复制代码
axios.get("/nls/query", {
  params: {
    "mobile": "Huawei"
  }

我们可以在控制台打印出来看看是不是真的读到了,

复制代码
console.log("服务端:", import.meta.env.VITE_SERVER)
axios.defaults.baseURL = import.meta.env.VITE_SERVER

现在可以试试,重新执行prod,试试prod环境,ok,没问题

相关推荐
独泪了无痕1 小时前
Lodash-JavaScript的实用工具库
前端·javascript
有趣的老凌1 小时前
用 Vibe Coding 搭了一个完整小程序「一定能成」
前端·javascript·后端
kyriewen12 小时前
Anthropic 估值逼近万亿美元,Claude Sonnet 5 + Claude Science 一天两连发
前端·ai编程·claude
小徐_233313 小时前
Wot UI 2.2.0 发布:Button 新增 subtle,VideoPreview 预览体验继续增强
前端·微信小程序·uni-app
天蓝色的鱼鱼15 小时前
关于 CSS 你可能不知道的属性,但关键时刻很有用
前端·css
泯泷16 小时前
第 2 篇:设计第一套字节码:Opcode、Instruction 与 Constant Pool
前端·javascript·安全
妙码生花16 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十五):优化细节、网络请求封装
前端·后端·ai编程
泯泷16 小时前
第 1 篇:从 1 + 2 开始:亲手写出第一台 JSVM
前端·javascript·安全
团团崽_七分甜16 小时前
Spring Boot 核心知识点总结
前端