当前位置:首页 > uni-app

uniapp多环境配置

2026-03-04 18:23:50uni-app

多环境配置文件创建

在项目根目录下创建不同环境的配置文件,例如:

  • env.dev.js 开发环境
  • env.test.js 测试环境
  • env.prod.js 生产环境

每个文件导出对应环境的配置对象:

// env.dev.js
module.exports = {
  BASE_URL: 'https://dev.example.com',
  API_KEY: 'dev_key_123'
}

动态加载环境配置

main.js中根据运行环境加载对应配置:

const env = process.env.NODE_ENV || 'development'
const config = require(`./env.${env}.js`)

Vue.prototype.$config = config

package.json脚本配置

在package.json中配置不同环境的运行命令:

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

条件编译处理

使用uni-app的条件编译处理环境差异:

// #ifdef H5
console.log('H5平台特定代码')
// #endif

// #ifdef MP-WEIXIN
console.log('微信小程序特定代码')
// #endif

环境变量使用示例

在组件或页面中访问环境变量:

export default {
  methods: {
    fetchData() {
      const url = this.$config.BASE_URL + '/api/data'
      // 发起请求...
    }
  }
}

跨平台适配方案

针对不同平台的环境差异,可创建平台适配层:

// utils/platform.js
function getPlatformConfig() {
  // #ifdef H5
  return { baseURL: 'https://h5.example.com' }
  // #endif

  // #ifdef MP-WEIXIN
  return { baseURL: 'https://mp.example.com' }
  // #endif
}

注意事项

  • 敏感信息不应直接存储在配置文件中
  • 生产环境配置需要单独管理
  • 不同环境的API地址可能需要处理跨域问题
  • 测试环境配置应尽可能接近生产环境

uniapp多环境配置

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

相关文章

uniapp消息推送

uniapp消息推送

uniapp消息推送实现方法 uniapp支持多种消息推送方式,包括uniPush、个推、极光推送等。以下为常见实现方案: uniPush(官方推荐) uniapp官方提供的推送服务,基于DClo…

uniapp删除

uniapp删除

卸载 uniapp 项目依赖 在项目根目录下执行以下命令,移除 node_modules 和依赖锁文件: rm -rf node_modules package-lock.json 如需清理全…

uniapp怎么启动

uniapp怎么启动

启动UniApp项目的步骤 确保已安装Node.js(建议版本12+)和HBuilderX(官方IDE)。若未安装,需先下载并配置环境。 安装开发工具 从HBuilderX官网下载对应操作系统的版…

uniapp树形选择

uniapp树形选择

uniapp树形选择实现方法 使用uni-data-checkbox组件 uniapp内置的uni-data-checkbox组件支持树形结构选择,适用于多级分类场景。配置时需要将数据格式化为树形结构…

uniapp安装axios

uniapp安装axios

安装axios 在uniapp项目中安装axios需要确保项目支持node_modules管理。通过npm或yarn安装axios: npm install axios # 或 yarn add…

uniapp前端项目

uniapp前端项目

Uniapp 前端项目开发指南 Uniapp 是一个基于 Vue.js 的跨平台开发框架,支持一次开发,多端发布(如微信小程序、H5、App 等)。以下是关于 Uniapp 前端项目的关键信息:…