uniapp+vue3配置环境变量
1.uniapp+vue3配置环境变量
2.uniapp关于uni.getUserProfile的使用3.uniapp有意思的api之openSetting4.处理flex布局5.uniapp登录板块封装(旧接口getUserInfo)6.uniapp获取用户信息7.在项目中使用UEditor碰到的几个问题8.一维数组转二位数组9.如果win报错无法加载文件 C:\Users\xx\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本10.win系统执行脚本报错策略更改无法加载文件 C:\Users\xx\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本11.uniapp去除button的边框12.uniapp中OnShow获取缓存13.之前使用抖音的担保支付,后俩转换成通用的交易方式14.js图片懒加载,在不做分页的情况下的解决方案15.width:100%与width:auto区别16.vue中render函数和h函数17.leetcode1047字符串反复去重(栈)18.由于<textarea>在某些平台上会创建一个原生控件,这可能会导致层级问题,尤其是在安卓设备上。在uni-app中,对于这种情况,通常推荐的解决方案是使用<cover-view>组件来覆盖原生组件,但是这种做法通常用于覆盖地图、视频等原生组件,而不是<textarea>19.记录一次uniapp使用scrollview20.微前端(矩阵项目)代码将单个文件合并到指定分支21.js不同类型比较22.登录后继续浏览之前的页面23.css24.sse25.数组扁平化26.DOMRect对象27.前端三大系列图解释28.js中关于return和if条件处理29.js文字处理两端展示中间省略号30.[popover, select] el-popover内有select的时候在选择后会自动关闭31.说一下flex的属性32.vue3中404路由匹配规则33.shape-outside34.createRange表示文档中的一个范围——用于js判断文字添加省略号情况35.uniapp清除指定key缓存36.vue3+uniapp关于button的open-type无法生效37.uniapp+vue3 使用list触底+下拉38.diff算法vue39.动态修改manifest.json40.记录一下大小写导致的问题41.小程序真机报错errMsg: “hideLoading:fail:toast can‘t be found“ ?42.vscode开发uniapp配置143.渐变颜色css设置44.微信小程序关于小说类使用官方阅读器45.一个简单的伪类选择器46.iframe 高度设置为0时还有占位_iframe占位47.git push所有分支到远程仓库48.输入框连续请求中取消上次请请求49.VS Code侧边栏的“资源管理器”丢了50.css样式相关的惊艳的属性51.千分位分隔函数52.uniapp实现多行文本溢出超过指定行数 展开 收起53.前端如何接收流式数据54.perspective和transform系列属性定义其他的环境变量
之前搞vue的时候 可以通过 .env的方式配置开发测试和线上需要的环境变量
uniapp中只有 development 和 production 这两个条件
vu2版本通过process.env.NODE_ENV可以获取到
我如果需要其他的变量怎么办呢: 如 测试 test等
vue2版本中使用
在根目录下的 package.json文件中 (没有的话通过 npm init -y初始化创建一个)
{
"uni-app": {
"scripts": {
"dev": {
"title": "微信小程序——开发版",
"env": {
"ENV_TYPE": "dev",
"UNI_PLATFORM": "mp-weixin",
"VUE_APP_BASE_URL": "http://127.0.0.1:8080/"
}
},
"test": {
"title": "微信小程序——测试版",
"env": {
"ENV_TYPE": "test",
"UNI_PLATFORM": "mp-weixin",
"VUE_APP_BASE_URL": "http://test.domain/"
}
},
"pro": {
"title": "微信小程序——正式版",
"env": {
"ENV_TYPE": "pro",
"UNI_PLATFORM": "mp-weixin",
"VUE_APP_BASE_URL": "http://pro.domain/"
}
}
}
},
"name": "xm-uni-app",
"version": "1.0.0",
"description": "{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**}",
"main": "main.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": ""
},
"keywords": [],
"author": "",
"license": "ISC"
}
----------------
console.log(process.env.VUE_APP_BASE_URL,'获取处于当前开发环境的url');
console.log(process.env.ENV_TYPE,'获取当前处于哪个开发环境');
console.log(process.env,'process.env++++++++++++');
vue3 vite版中使用
{
"uni-app": {
"scripts": {
"dev": {
"title": "微信小程序——开发版",
"env": {
"ENV_TYPE": "dev",
"UNI_PLATFORM": "mp-weixin",
"VITE_BASE_API": "http://127.0.0.1:8080/"
}
},
"test": {
"title": "微信小程序——测试版",
"env": {
"ENV_TYPE": "test",
"UNI_PLATFORM": "mp-weixin",
"VITE_BASE_API": "http://test.domain/"
}
},
"pro": {
"title": "微信小程序——正式版",
"env": {
"ENV_TYPE": "pro",
"UNI_PLATFORM": "mp-weixin",
"VITE_BASE_API": "http://pro.domain/"
}
}
}
}
}
在src/utils文件夹下创建envConfig.js
// 导出的环境请求地址
//本地环境
const dev = {
ENV: "dev",
VITE_BASE_API: "http://127.0.0.1:8080/dev-api",
};
//正式环境
const pro = {
ENV: "pro",
VITE_BASE_API: "https://xxx/prod-api",
};
//测试环境
const test = {
ENV: "test",
VITE_BASE_API: "https://xxx/test-api",
};
export default {
dev,
test,
pro,
};
在vite.config.js添加配置
import { defineConfig } from "vite";
import uni from "@dcloudio/vite-plugin-uni";
import ENV_CONFIG from "./utils/envConfig.js";
import { resolve } from "path"; // 导入 path 模块,帮助我们解析路径
export default defineConfig(() => {
return {
server: {
port: "3002",
},
resolve: {
alias: {
"@": resolve(__dirname, "/src"),
},
},
plugins: [uni()],
define: {
"process.env.config": ENV_CONFIG, //配置一
'process.env': process.env, //配置二
},
};
});
----------------
let baseURL = process.env.config[process.env.UNI_SCRIPT].VITE_BASE_API; //获取处于当前开发环境的url
let evnName = process.env.config[process.env.UNI_SCRIPT].ENV; //获取当前处于哪个开发环境
console.log("baseURL:", baseURL, "++++++++++++++++++++++++");
console.log("envName:", evnName, "++++++++++++++++++++++++");
console.log("evn:", process.env, "++++++++++++++++++++++++");
本文来自博客园,作者:jialiangzai,转载请注明原文链接:https://www.cnblogs.com/zsnhweb/articles/17866267.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异