uni-app的多环境部署配置

简介: 分享下如何对uni-app项目进行多环境打包部署改造

本文记录的方法适用于vue-cli方式创建的 uni-app 项目。

环境区分

官方文档说明:
开发环境和生产环境
uni-app 可通过 process.env.NODE_ENV 判断当前环境是开发环境还是生产环境。一般用于连接测试服务器或生产服务器的动态切换。
在HBuilderX 中,点击“运行”编译出来的代码是开发环境,点击“发行”编译出来的代码是生产环境

解决方案

  1. 使用基于vue-cli命令行方式创建项目
  2. 添加必要的环境变量, VUE_APP_ 起始,例如 VUE_APP_BASE_API
    即在项目根目录新建不同环境的变量配置文件,并分别写入环境所需配置

    • .env.development
    • .env.test
    • .env.production
  3. 然后可以通过 VUE_APP_BASE_API 访问
    例如:在项目内请求接口的地方设置 baseurl 为 process.env.VUE_APP_BASE_API
  4. 修改 package.json
    增加以下脚本,在启动或者打包时以切换不同服务器(不一定完全按照下方设置)。
    这里的需求是在开发模式启动时方便切换开发、测试、生产环境的数据库方便验证问题,以及发行至各环境

"build:h5": "cross-env NODE_ENV=production UNI_PLATFORM=h5 vue-cli-service uni-build",
"build:h5-test": "cross-env NODE_ENV=test UNI_PLATFORM=h5 vue-cli-service uni-build",
"build:h5-dev": "cross-env NODE_ENV=development UNI_PLATFORM=h5 vue-cli-service uni-build", 
"dev:h5": "cross-env NODE_ENV=production UNI_PLATFORM=h5 vue-cli-service uni-serve --watch",
"dev:h5-test": "cross-env NODE_ENV=test UNI_PLATFORM=h5 vue-cli-service uni-serve --watch",
"dev:h5-dev": "cross-env NODE_ENV=development UNI_PLATFORM=h5 vue-cli-service uni-serve --watch",
  1. 最后像普通vue项目一样使用就行了
npm run dev:h5-test

参考资料

相关文章
|
1月前
|
小程序 开发工具 git
【微信小程序】-- uni-app 项目--- 购物车 -- 配置 tabBar 效果(五十一)
【微信小程序】-- uni-app 项目--- 购物车 -- 配置 tabBar 效果(五十一)
|
1月前
|
小程序 Android开发 iOS开发
uni-app 安装与配置
uni-app 安装与配置
20 1
|
4天前
|
Kubernetes Ubuntu Linux
k8s部署grafana beyla实现app应用服务依赖图可观测
k8s部署grafana beyla实现app应用服务依赖图可观测
16 4
|
1月前
|
开发框架 移动开发 小程序
【微信小程序】-- 配置uni-app的开发环境(四十八)
【微信小程序】-- 配置uni-app的开发环境(四十八)
|
16天前
|
Java 应用服务中间件 nginx
【Azure Spring Apps】Spring App部署上云遇见 502 Bad Gateway nginx
在部署Azure Spring App后,用户遇到502 Bad Gateway错误,问题源于Nginx。解决方案是检查并关闭Spring App的ingress-to-app TLS配置,因为若未启用HTTPS访问,Nginx通过HTTPS访问应用会导致此错误。
|
21天前
|
JavaScript Java 测试技术
基于ssm+vue.js+uniapp小程序的课程考勤及作业提交App附带文章和源代码部署视频讲解等
基于ssm+vue.js+uniapp小程序的课程考勤及作业提交App附带文章和源代码部署视频讲解等
12 0
基于ssm+vue.js+uniapp小程序的课程考勤及作业提交App附带文章和源代码部署视频讲解等
|
9天前
|
应用服务中间件 Linux 网络安全
PHP应用部署在App Service for Linux环境中,上传文件大于1MB时,遇见了413 Request Entity Too Large 错误的解决方法
在Azure App Service for Linux上部署的PHP应用遇到上传文件超过1MB时出现413 Request Entity Too Large错误的解决之法
|
1月前
|
Web App开发 JSON 小程序
苹果app开发apple-app-site-association文件配置
apple-app-site-association 是苹果的配置文件,用于建立app和网站关联,支持Universal Links,使点击网站链接能直接打开相应app内部页面。配置文件为JSON格式,需上传至服务器`.well-known`目录或根目录。通过检查三个链接来测试配置,确保Content-Type为`application/json`。成功配置后,点击链接能在iPhone备忘录或Safari中直接唤起app,但可能有24-48小时延迟。
178 6
|
13天前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的环境保护生活App的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的环境保护生活App的详细设计和实现(源码+lw+部署文档+讲解等)
13 0
|
21天前
|
JavaScript Java 测试技术
基于ssm+vue.js+uniapp小程序的环境保护生活App附带文章和源代码部署视频讲解等
基于ssm+vue.js+uniapp小程序的环境保护生活App附带文章和源代码部署视频讲解等
13 0