Taro 多环境打包配置【开发,测试,生产环境】

我用的是taro 1.2.26版本

【1】cross-env:需要安装依赖,使用cnpm i cross-env -D

【2】config/index.js

最下面【    module.exports =function (merge) {    】 这段  【 替换 】  为

module.exports =function (merge) {

const buildConfig = {

env: {

BUILD_ENV:JSON.stringify(process.env.NODE_ENV)

}

}

if (process.env.NODE_ENV ==='dev') {

return merge({},config, require('./dev'),buildConfig)

}

if(process.env.NODE_ENV==='testm'){

return merge({},config,require('./test'),buildConfig)

}

return merge({},config, require('./prod'),buildConfig)

}


【3】 新建config/test.js ,【添加】以下内容

module.exports = {

env: {

NODE_ENV:'"testm"'

  },

defineConstants: {

},

weapp: {},

h5: {}

}

【4】libs文件夹,api.js    【添加】如下内容

import env from "./env"

export const baseUrl  =  env.baseUrl; //老接口

export const baseUrl_new = env.baseUrl_new;  //  2.0版本以后的新接口


【5】libs 文件夹,新建env.js

let config = {

development: {

baseUrl : 'https://dev.xxx.cn/',   //老接口

baseUrl_new : 'https://newdev.xxx.cn/'   //  2.0版本以后的新接口

  },

testm: {

baseUrl : 'https://test.xxx.cn/',

baseUrl_new : 'https://newtest.xxx.cn/'

  },

production: {

baseUrl : 'https://prod.xxx.cn/',

baseUrl_new : 'https://newprod.xxx.cn/'

  },

};

console.log(process.env.NODE_ENV)

let env =config[process.env.NODE_ENV];

export default env;

【6】package.json文件


找到【"scripts"】 部分,如下修改,

"build:weapp:dev":"cross-env NODE_ENV=dev taro build --type weapp",

"build:weapp:testm":"cross-env NODE_ENV=testm taro build --type weapp",

"build:weapp:prd":"cross-env NODE_ENV=prd taro build --type weapp",


"dev:weapp":"cross-env NODE_ENV=dev npm run build:weapp:dev -- --watch",

"testm:weapp":"cross-env NODE_ENV=testm npm run build:weapp:testm -- --watch",

"prd:weapp":"cross-env NODE_ENV=prd npm run build:weapp:prd -- --watch",

【7】命令行 ,执行的时候,如下

 dev环境      npm run dev:weapp 

test环境     npm run testm:weapp 

prd环境     npm run prd:weapp

注意:为什么我使用的是testm,因为test应该是保留字,我是发现运行dev和prd都正常,运行test总是报莫名其妙的错。所以想到之前确实看到过一篇文章说设置test环境的时候,不要直接使用【test】字段。

转载自 https://blog.csdn.net/ifmushroom/article/details/120035312?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~aggregatepage~first_rank_ecpm_v1~rank_v31_ecpm-20-120035312.pc_agg_new_rank&utm_term=taro+%E5%88%86%E7%8E%AF%E5%A2%83%E6%89%93%E5%8C%85&spm=1000.2123.3001.4430

你可能感兴趣的:(Taro 多环境打包配置【开发,测试,生产环境】)