React-native run-ios加载环境变量

时间:2017-02-10 19:28:05

标签: ios deployment react-native environment-variables

我想要一种现代方法来管理本机移动应用的环境变量。

答案here解释了12因素方法风格(我喜欢),其中涉及安装一个转换引用的babel插件

const apiKey = process.env.API_KEY;

到过程环境中找到的相应值

const apiKey = 'my-app-id';

问题是,为了在填充的环境中运行它,我需要将其设置为

API_KEY=my-app-id react-native run-ios

如果我有一个包含10-20个环境变量的.env文件,则此方法变得难以处理。我到目前为止找到的最好的方法是运行

env $(cat .env | xargs) react-native run-ios

这有点不受欢迎,因为想要使用此程序包的开发人员必须设置自定义shell别名来执行此操作。这不利于良好的开发环境,也使发布的构建和部署流程变得复杂。

有没有办法在首先填充流程环境的react-native-cli(或配置文件)中添加一个钩子?就像npm" pre"脚本,但反应原生。

1 个答案:

答案 0 :(得分:1)

您可以使用react-native-config这是一个原生图书馆并需要一个工作链接,react-native-dotenv就像react-native-config一样,但不需要任何原生链接。

它可以与设置的.env个文件一起使用,例如: .env.development包含process.env.NODE_ENV === 'development'的环境变量。