react-native-config不工作(两个操作系统中的配置为空)

a0x5cqrl  于 6个月前  发布在  React
关注(0)|答案(1)|浏览(68)

我真的很纠结于一个看起来很原始的错误。我已经安装了react-native-config,当console.logging Config对象时,它返回{}
这个问题发生在Android和iOS上,它似乎不是一个链接问题,因为(即使RN 71.3不需要手动链接)当遵循在Android上手动链接的步骤时,我得到了一个错误,说RNCifgPackage已经链接。
这是我的代码的简化版本:

import Config from 'react-native-config';

console.log(Config);

字符串
这就是我的.env文件的样子:

REACT_APP_STAGE=development
TEST=ThisIsATest
ANOTHER_TEST=ThisIsAnotherTest

重试次数

我已经试过了:

  • 运行gradlew clean和pod install(即使这不是特定于平台的问题)
  • 使用ENVFILE=.env react-native run-android运行以硬编码env文件

我明白这是非常有限的信息,以调试问题,但任何方向和帮助是赞赏,包括任何方法,你会遵循调试。

EDIT:Config最后出现了,但是更新很晚,an issue more people seem to be facing,我用react-native-dotenv代替了。

tpgth1q7

tpgth1q71#

下面是一个修复测试上

  • 第一个月
  • "react-native-config": "^1.5.1"
    安卓系统

添加到app/build.gradle

project.ext.envConfigFiles = [
        debug: ".env",
        release: ".env",
]

apply from: project(':react-native-config').projectDir.getPath() + "/dotenv.gradle"

...

android {
...

    defaultConfig {
...
      resValue "string", "build_config_package", "com.yourApp.packageName"
    }

字符串

iOS

转到Product > Scheme > Edit Scheme...
在左侧面板Build > pre-actions中添加new run script action并添加以下代码(以生成GeneratedDotEnv.m

xcodebuild -project "${SRCROOT}/../node_modules/react-native-config/ios/ReactNativeConfig.xcodeproj"


然后在Pod文件中,在 target 下添加这一行

pod 'react-native-config', :path => '../node_modules/react-native-config'


最后一步:cd ios && pod install

相关问题