これは、ネイティブモジュールを搭載したiOSとAndroidの両方でReact Nativeを使用すると非常に簡単です。あなたに
//RCTMyDataStore.h
#import <Foundation/Foundation.h>
#import <React/RCTBridgeModule.h>
#import <React/RCTEventEmitter.h>
@interface RCTMyDataStore : RCTEventEmitter <RCTBridgeModule>
@end
と
// RCTMyDataStore.m
#import "RCTMyDataStore.h"
@implementation RCTMyDataStore {
}
RCT_EXPORT_MODULE(MyDataStore);
RCT_REMAP_METHOD(getMyData,
getMyData_resolver:(RCTPromiseResolveBlock)resolve
getMyData_rejecter:(RCTPromiseRejectBlock)reject)
{
// get data from my persistent store
if (success) {
// convert to RN passable format (NSDictionary or NSArray)
resolve(myData);
} else {
reject(@"404", @"No data", nil);
}
}
@end
が反応ネイティブコード:
import {
NativeModules
} from 'react-native';
const NativeDataStore = NativeModules.MyDataStore; // must match the RCT_EXPORT_MODULE name
NativeDataStore.getMyData()
.then(data => {
// do some stuff
})
をあなたはスウィフト/ OBJの-Cでの簡単なネイティブモジュールを構築し、自分の永続ストアを公開します
ネイティブモジュールとSwiftサポートの詳細については、こちらのドキュメントをご覧ください:https://facebook.github.io/react-native/docs/native-modules-ios.html#exporting-swift
CoreDataのようなネイティブライブラリにアクセスするためにいくつかのラッパーを書く必要があると思います。いくつかのドキュメント[here](https://facebook.github.io/react-native/docs/communication-ios.html)を参照してください。 – Cristik