我想为每个方案设置一个特定的环境变量,以便在 babel.config 中可用.js以便我可以打开或关闭某个插件。我怎样才能做到这一点?我已经尝试在PBXShellScriptBuildPhase
阶段内设置变量,但它适用于所有方案。
您可以在Build Settings
选项卡中为每个方案创建一个user defined
设置,然后将其作为键包含在文件中Info.plist
。然后创建头文件和实现文件以将此变量导出到本机端。这样
// RNConfig.h
#import <React/RCTBridgeModule.h>
@interface RNConfig : NSObject <RCTBridgeModule>
@end
// RNConfig.m
#import "RNConfig.h"
@implementation RNConfig
RCT_EXPORT_MODULE();
- (NSDictionary *)constantsToExport
{
NSString* custom_val = [[[NSBundle mainBundle] infoDictionary] valueForKey:@"YOUR_CUSTOM_VALUE"];
return @{@"custom": buildEnvironment };
}
@end
然后,您可以从本机模块导入配置
作为const { RNConfig } = NativeModules;
并使用 babel 配置文件中的变量