簡體   English   中英

將一個字符串從Obj-C傳遞給React Native

[英]Passing a string from Obj-C to React Native

我目前正在React Native中構建一個應用程序,面臨一個我似乎無法在我的RN框架中解決的問題,我可能需要提一下,我對Objective-C非常新。 但是,我設法通過在AppDelegate.m文件中調用它來獲取它。 但是,如何將我在appdelegate中創建的字符串變量傳遞給我的javascript文件?

我快速地看了一下NativeAppEventEmitter,但它似乎有所不同。 在我的AppDelegate.m中它看起來像這樣:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
  BOOL handled = [[FBSDKApplicationDelegate sharedInstance] application:application
                                                                openURL:url
                                                      sourceApplication:sourceApplication
                                                             annotation:annotation
                  ];
  NSString *fbAccessToken = [FBSDKAccessToken currentAccessToken].tokenString;
  return handled;
}

看看RN給出的NativeAppEventEmitter技巧,我試圖實現它。 但它抱怨我的橋梁很多。

#import "AppDelegate.h"

#import "RCTRootView.h"

#import <FBSDKCoreKit/FBSDKCoreKit.h>

#import "RCTBridge.h"

#import "RCTBridgeModule.h"

#import "RCTEventDispatcher.h"

@implementation AppDelegate

RCT_EXPORT_MODULE();

@synthesize bridge = _bridge;

我在AppDelegate.h中將其聲明為: @property (nonatomic) NSString *bridge;

但是當我嘗試使用eventDispatcher它給了我以下內容:

在此輸入圖像描述

使用initialProperties啟動應用程序時可以傳遞一些數據。 我認為這是您案例中最好的解決方案。 您可以在RCTRootView上傳遞令牌,然后從props獲取它。 RN文檔中有一個很好的例子。 或者,您可以發送包含嵌入數據的事件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM