问题描述
taro怎么配置多个环境?多个环境的不同变量?
复现步骤
无
期望行为
开发时存在多个环境,包括开发环境、测试环境、准生产环境、生产环境,在taro中如何配置不同的打包命令来区分多个环境?就像vue中的.env.dev .env.test .env.uat .env.prod等环境变量
报错信息
无
系统信息
无
欢迎提交 Issue~
如果你提交的是 bug 报告,请务必遵循 Issue 模板的规范,尽量用简洁的语言描述你的问题,最好能提供一个稳定简单的复现。🙏🙏🙏
如果你的信息提供过于模糊或不足,或者已经其他 issue 已经存在相关内容,你的 issue 有可能会被关闭。
Good luck and happy coding~
CC @luckyadam
我是自己在启动命令里面加了SERVER_ENV等变量
taro内部的处理逻辑是:加watch就是测试环境,不加watch就是生产环境
@luckyadam @Qiyu8 @shenghanqin
是这样的吗?
// 新建uat文件
module.exports = {
env: {
NODE_ENV: '"uat"'
},
......
}
// index.js
module.exports = function (merge) {
console.log(process.env.NODE_ENV)
if (process.env.NODE_ENV === 'development') {
return merge({}, config, require('./dev'))
}
if (process.env.NODE_ENV === 'uat') {
return merge({}, config, require('./uat'))
}
return merge({}, config, require('./prod'))
}
在package.json怎么配置打包命令?
比如我想添加: "uat:h5": "taro build --type h5 --watch" 这个命令如何配置呢?
Hello~
您的问题楼上已经有了确切的回答,如果没有更多的问题这个 issue 将在 15 天后被自动关闭。
如果您在这 15 天中更新更多信息自动关闭的流程会自动取消,如有其他问题也可以发起新的 Issue。
Good luck and happy coding~
问题描述
taro怎么配置多个环境?多个环境的不同变量?复现步骤
无期望行为
开发时存在多个环境,包括开发环境、测试环境、准生产环境、生产环境,在taro中如何配置不同的打包命令来区分多个环境?就像vue中的.env.dev .env.test .env.uat .env.prod等环境变量报错信息
无系统信息
无
老哥,这个问题解决了么?
没有解决...
taro的环境变量env是枚举值,只有development和production两种,设置为uat时,打包会报错。只能设置另外的变量值来区分了~
我是自己在启动命令里面加了SERVER_ENV等变量
如何在启动项目的时候添加?
taro的环境变量env是枚举值,只有development和production两种,设置为uat时,打包会报错。只能设置另外的变量值来区分了~
请问如何添加 我自己写了一条命令
"build-test:weapp": "taro build --type weapp --server a",
但是在 process.env.server 中获得的还是 undefined
请问 这个问题 解决了吗?我在script设置环境变量,打印出来的结果还NODE_ENV的结果一样。
请问 这个问题 解决了吗?我在script设置环境变量,打印出来的结果还
NODE_ENV的结果一样。
我用了cross-env 解决了
请问 这个问题 解决了吗?我在script设置环境变量,打印出来的结果还
NODE_ENV的结果一样。我用了cross-env 解决了
大佬是怎么写的呢?
我是这样写的
"test": "cross-env API_ENV=test npm run build:weapp -- --watch",
然后打印 process.env.API_ENV结果是development
请问 这个问题 解决了吗?我在script设置环境变量,打印出来的结果还
NODE_ENV的结果一样。我用了cross-env 解决了
大佬是怎么写的呢?
我是这样写的
"test": "cross-env API_ENV=test npm run build:weapp -- --watch",
然后打印process.env.API_ENV结果是development
这样试下?
npm run test
"test": "npm run build:test -- --watch"
"build:test": "cross-env API_ENV=test taro build --type weapp",
请问 这个问题 解决了吗?我在script设置环境变量,打印出来的结果还
NODE_ENV的结果一样。我用了cross-env 解决了
大佬是怎么写的呢?
我是这样写的
"test": "cross-env API_ENV=test npm run build:weapp -- --watch",
然后打印process.env.API_ENV结果是development这样试下?
npm run test
"test": "npm run build:test -- --watch"
"build:test": "cross-env API_ENV=test taro build --type weapp",
undefined
请问 这个问题 解决了吗?我在script设置环境变量,打印出来的结果还
NODE_ENV的结果一样。我用了cross-env 解决了
大佬是怎么写的呢?
我是这样写的
"test": "cross-env API_ENV=test npm run build:weapp -- --watch",
然后打印process.env.API_ENV结果是development这样试下?
npm run test
"test": "npm run build:test -- --watch"
"build:test": "cross-env API_ENV=test taro build --type weapp",undefined
项目文件 config>dev && config>prod
图裂开了,大佬
请问 这个问题 解决了吗?我在script设置环境变量,打印出来的结果还
NODE_ENV的结果一样。我用了cross-env 解决了
大佬是怎么写的呢?
我是这样写的
"test": "cross-env API_ENV=test npm run build:weapp -- --watch",
然后打印process.env.API_ENV结果是development这样试下?
npm run test
"test": "npm run build:test -- --watch"
"build:test": "cross-env API_ENV=test taro build --type weapp",undefined
项目文件 config>dev && config>prod
图裂开了,大佬
额 你要在项目配置文件里设置才有值的 就在那两个文件里添加设置 PAGE_ENV: process.env.API_ENV?"${process.env.API_ENV}":'"other"',
process.env.API_ENV?
"${process.env.API_ENV}":'"other"',
成功了,谢谢🙏啦!!!
cross-env 直接就可以解决,感谢