最近,我们有相同的使用情况在我们的应用程序之一,并决定执行以下操作:从NSUserDictionary
阅读就像正常(获取所有元素),并把它们传递给RCTRootView
NSDictionary *userSettings = @{}; // fetch them here
RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation
moduleName:@"XYZ"
initialProperties:userSettings
launchOptions:launchOptions];
假设您的userSettings
字典包含例如accessToken
属性,您应该能够从您的根React组件(您传递给AppRegistry.registerComponent
)中访问this.props.accessToken
。
接下来,您可以检查值是否已经保存到AsyncStorage(或者是否存在您应该使用的任何其他userSettings副本),如果没有 - 保留当前值。
另一种替代方法是使用可在React Native中使用的Settings
模块,该模块允许您访问NSUserDefaults
。它有.get()
和.set()
方法,所以在技术上应该可以使用它。
请注意,通过initialProperties传递的userSettings
不会更新,直到您从Xcode中重新运行应用程序。
我想通过使用Settings.get('NSUserDefaults'),但我收到未定义访问NSUserDefaults。是不是可以使用? – NinetyHH