ionic-framework - 如何为 dev vs prod @ionic/app-scripts 设置动态环境变量?
问题描述
我是 ionic/webpack 构建过程的完整新手,但对于这项任务,我特意指的是:https ://github.com/ionic-team/ionic-app-scripts#environments 。我不太明白“如果变量存在于流程环境中,它将被该值替换”是什么意思。
我的 package.json 中的脚本如下:
"scripts": {
"clean": "ionic-app-scripts clean",
"build": "ionic-app-scripts build --dev",
"build:after": "",
"ionic:build": "ionic-app-scripts build",
"ionic:serve": "ionic-app-scripts serve"
}
据我了解,我应该能够设置一个环境变量,例如 process.env.BASE_URL 在我的代码中的任何位置,根据构建可能是不同的值。
我的问题是如何构建我的脚本以在我的流程环境中设置该变量?只是将“build”脚本设置为“BASE_URL=myurl ionic-app-scripts build --dev”吗?如果真的那么简单,那么我将如何访问 --prod 标志的脚本来设置该变量的变量?先感谢您。我真的很喜欢这个社区。
解决方案
你几乎是正确的。通常,我做事的方式是在我的脚本配置中定义一个项目,例如"ionic:build:prod" : "BASE_URL=myurl ionic-app-scripts build --prod
. 这样你就可以用一个简单的命令来运行整个事情(npm run ionic:build:prod
)