Expo 最近推出了一项新功能,使用他们所谓的动态应用程序配置文件可以更轻松地管理 ENV。

*_这里是你在 Expo 中为不同环境设置 env 变量:

*_

  1. 在你的 repo 的根目录下创建 app.config.js 文件

  2. 填充文件,它应该看起来像这样:

导入'dotenv/config';

export default { name: 'APP_NAME', version: '1.0.0', extra: { environment: 'dev' }, };

1.调用变量。现在,当我们运行我们的应用程序时,我们可以通过执行以下操作来访问环境变量:

import Constants from 'expo-constants'; export default function App(props) { console.log("props.environment: ", props.environment) } App.defaultProps = { environment: Constants.manifest.extra.environment, };

1.为生产和本地开发设置不同的变量。为此,我们需要更改部署脚本以手动添加描述环境的变量。

我将我的放在一个 Dockerfile 中,Google Cloud 使用它来构建我的应用程序:

RUN ENVIRONMENT=prod expo build:web

但是您将 ENVIRONMENTu003dprod 添加到构建应用程序的任何位置。

  1. 更新 app.config.js 使变量根据环境动态化。

import 'dotenv/config'; if (process.env.ENVIRONMENT === 'prod') { export default { name: 'APP_NAME', version: '1.0.0', extra: { environment: 'prod' }, }; } else { export default { name: 'APP_NAME', version: '1.0.0', extra: { environment: 'dev' }, }; }

在这里,我们检查 ENVIRONMENT 变量,然后我们可以根据我们使用应用程序的位置更新额外的变量。当我们部署我们的应用程序时,将使用在顶部定义的变量。

Logo

React社区为您提供最前沿的新闻资讯和知识内容

更多推荐