Ionic 2:访问IONIC_ENV始终返回undefined

时间:2017-01-21 18:03:43

标签: angular ionic2

我想知道如何访问IONIC_ENV变量,以便我可以选择在prod或开发中使用我的API的url,但是当我尝试检查它时,总是返回undefined。

process.env.IONIC_ENV

也许我需要运行或添加其他配置,但由于我是Ionic 2的新手,我真的不知道该怎么做。我试图访问此变量,因为我想在Play商店发布我的应用,但我有两个问题:

  1. Angular 2总是说是处于开发模式
  2. 根据环境,我无法访问ionic_env来决定我api的最终网址。
  3. 我使用Ionic2 rc5和angular-cli来管理karma / jasmine的测试

    你有什么想法吗?

1 个答案:

答案 0 :(得分:0)

可能的解决方案:

我假设您在移动设备和浏览器之间有所不同。 所有你需要做的就是判断一个移动设备是否检查windwo.cordova对象是否存在。如果是,请使用prod url,如果不使用dev url。

说明:

IONIC_ENV是一个nodejs服务器变量,您无法从浏览器访问它,因为它是"客户端"。

您可以使用webpack或ngc在构建过程中使用它,但由于您正在使用离子应用程序脚本构建过程,您必须分叉构建并创建自己的版本或编辑节点模块本身以使用这个变量。当然不是直接在浏览器源代码中。