当前位置:首页 > uni-app

uniapp多环境配置

2026-02-05 16:45:18uni-app

多环境配置方法

在UniApp中实现多环境配置(如开发、测试、生产环境)可通过以下方式实现:

1. 使用process.env.NODE_ENV区分环境 UniApp基于Vue CLI,默认支持通过process.env.NODE_ENV获取当前环境变量:

// 获取当前环境
const env = process.env.NODE_ENV; // development/production

// 示例配置
const configs = {
  development: {
    baseUrl: 'http://dev.example.com'
  },
  production: {
    baseUrl: 'https://prod.example.com'
  }
}
export default configs[env]

2. 自定义环境变量 在项目根目录创建.env文件(开发环境)和.env.production文件(生产环境):

uniapp多环境配置

# .env 开发环境
VUE_APP_API_BASE=http://dev.example.com
VUE_APP_ENV=development

# .env.production 生产环境
VUE_APP_API_BASE=https://prod.example.com
VUE_APP_ENV=production

通过process.env.VUE_APP_*访问变量:

console.log(process.env.VUE_APP_API_BASE)

3. 通过manifest.json配置src/manifest.json中配置不同环境的参数:

uniapp多环境配置

{
  "name": "app-name",
  "appid": "",
  "description": "",
  "versionName": "1.0.0",
  "versionCode": "100",
  "uni-app": {
    "scripts": {
      "dev": {
        "title": "开发环境"
      },
      "test": {
        "title": "测试环境"
      }
    }
  }
}

4. 条件编译实现环境区分 使用#ifdef条件编译语法:

// #ifdef H5
console.log('Web环境')
// #endif

// #ifdef MP-WEIXIN
console.log('微信小程序环境')
// #endif

5. 动态配置文件 创建config.js动态加载配置:

// config.js
const env = process.env.VUE_APP_ENV || 'development'

const configMap = {
  development: {
    baseUrl: 'http://dev.api.com'
  },
  production: {
    baseUrl: 'https://api.com'
  }
}

export default configMap[env]

打包命令配置

package.json中配置不同环境的打包命令:

{
  "scripts": {
    "dev": "cross-env NODE_ENV=development uni-cli-service serve",
    "build:prod": "cross-env NODE_ENV=production uni-cli-service build",
    "build:test": "cross-env NODE_ENV=test uni-cli-service build"
  }
}

注意事项

  1. 所有VUE_APP_开头的变量会被自动加载,其他变量需要手动配置
  2. 修改环境变量后需要重新编译项目
  3. 小程序端环境变量需要通过uni.getSystemInfoSync()等API动态获取
  4. 生产环境配置需要谨慎处理敏感信息

标签: 环境uniapp
分享给朋友:

相关文章

uniapp样式库

uniapp样式库

uniapp 常用样式库推荐 uView UI uView 是专为 uniapp 设计的多端兼容 UI 框架,提供丰富的组件和工具类。支持 Vue3 组合式 API,内置主题定制功能,常用于快速构建企…

uniapp 数据

uniapp 数据

uniapp 数据管理方法 本地存储 使用 uni.setStorageSync 和 uni.getStorageSync 进行本地数据持久化存储。适合保存用户偏好设置或小型数据。 // 存储数…

uniapp图形绘制

uniapp图形绘制

Uniapp 图形绘制方法 Uniapp 提供了多种图形绘制的方式,适用于不同场景需求。以下是常见的实现方法: Canvas 绘制 Uniapp 支持使用 HTML5 Canvas API 进行图形…

uniapp结算页面

uniapp结算页面

uniapp 结算页面实现 页面布局设计 结算页面通常包含商品列表、价格汇总、收货地址和支付方式选择。使用 uni-list 组件展示商品信息,uni-forms 收集用户收货信息,radio-gro…

如何搭建react环境

如何搭建react环境

安装Node.js和npm React开发需要Node.js环境,它自带npm(Node包管理器)。访问Node.js官网下载并安装最新LTS版本。安装完成后,终端运行以下命令验证是否成功: n…

如何搭建react开发环境搭建

如何搭建react开发环境搭建

安装 Node.js 和 npm 确保系统中已安装 Node.js(包含 npm),可以从 Node.js 官网 下载最新 LTS 版本。安装完成后,通过以下命令验证安装: node -v np…