React native 我可以在dev中更改process.env.NODE_env吗?

React native 我可以在dev中更改process.env.NODE_env吗?,react-native,React Native,我在react原生项目中使用一个节点包API客户端,该客户端使用process.env.node_env来确定是否返回开发或生产数据。我想在我的开发环境(模拟器)中对生产数据库进行测试(它是只读的,并且数据在开发和产品之间有很大差异) 从这里我可以看出: 当dev标志为true时,process.env.NODE_env默认设置为development 我已经尝试在我的环境中将NODE_ENV设置为production,但是在实际的模拟器中没有得到它(它仍然说是development) 在启动或

我在react原生项目中使用一个节点包API客户端,该客户端使用process.env.node_env来确定是否返回开发或生产数据。我想在我的开发环境(模拟器)中对生产数据库进行测试(它是只读的,并且数据在开发和产品之间有很大差异)

从这里我可以看出: 当dev标志为true时,process.env.NODE_env默认设置为development

我已经尝试在我的环境中将NODE_ENV设置为production,但是在实际的模拟器中没有得到它(它仍然说是development)


在启动或在
AppDelegate.m
startup(调用
jsBundleForBundleRoot
之前)中使用run-*?

时,是否有办法指定此选项,请添加以下内容:

[RCTBundleURLProvider sharedSettings].enableDev = false;
或者对于Android,它应该是这样的(未经测试):


请注意,这些更改了默认值,我相信这些默认值存在于应用程序的执行之外。因此,您可能需要使用
true
再次运行它们,以将它们重置为默认值。

我目前也在寻找解决方案。如果我找到了一个好的解决方案,我会发帖的。你们两个找到解决方案了吗?节点实例似乎是由一个单独的进程分离出来的,它不传递环境变量。我已经注意到其他人在他们的文件中初始化环境变量,但这对我来说似乎是一种攻击,因为我只希望在我的开发环境中使用它,而不希望在生产环境中使用它。我还没有-仍然使用解决方法:-(
PreferenceManager.getDefaultSharedPreferences(this).edit().putBoolean("js_dev_mode_debug", false);