我想知道如何访问IONIC_ENV变量,以便我可以选择在生产或开发中使用我的 API 的 url,但是当我尝试检查它时,总是返回 undefined。
process.env.IONIC_ENV
也许我需要运行或添加另一个配置,但由于我是 Ionic 2 的新手,我真的不知道该怎么做。我正在尝试访问此变量,因为我想在 Play 商店中发布我的应用程序,但我有两个问题:
- Angular 2 总是说处于开发模式
- 我无法访问ionic_env来决定我的 api 的最终 url,具体取决于环境。
我正在使用 Ionic2 rc5 和 angular-cli 来管理带有业力/茉莉花的测试
你有什么想法吗?
可能的解决方案:
我假设您在移动设备和浏览器之间有所不同。要判断它是否是移动设备,您所要做的就是检查windwo.cordova对象是否存在。如果是,如果不使用开发网址,请使用生产网址。
解释:
IONIC_ENV是一个 nodejs 服务器变量,您无法从浏览器访问它,因为它是"客户端"。
您可以在构建过程中使用 webpack 或 ngc 使用它,但由于您使用的是 ionic 应用程序脚本构建过程,因此您必须分叉构建并制作自己的版本,或者编辑节点模块本身以使用此变量。当然不是直接在浏览器源代码中。