react native iOS 交互 組件

使用發送通知的做法:

iOS端

繼承rn類 實現代理

實現的是照片選擇功能,導入發送通知的包

#import "RCTEventDispatcher.h"

定義

@synthesize bridge = _bridge;

導出類 沒有參數默認是類名

RCT_EXPORT_MODULE();

導出方法

RCT_EXPORT_METHOD(openNativePhoto:(NSString *)name callBack:(RCTResponseSenderBlock)callback)

{

//選擇相冊省略

//callback可以回傳值回去 但是相冊在這里取不到照片 需要實現代理方法 所以這是一個測試方法?

//? callback(@[[NSNull null],@"dasauto"]);

}

//選擇相冊的代理方法

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary*)info{ ?

//省略。。。

//發送通知

?[self sendEventWithName:@"EventReminder"? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? body:@{@"name": [info[UIImagePickerControllerReferenceURL] absoluteString]}];?

}

//通知名稱 有多少寫多少 ?取值的時候按照這個名稱取值(理解為字典)

- (NSArray*)supportedEvents

{

return @[@"EventReminder"];//有幾個就寫幾個

}

js端

import{NativeEventEmitter}from'react-native';

constmyNativeEvt =newNativeEventEmitter(HWRCTLinkController);//創建自定義事件接口

varsubscription = myNativeEvt.addListener(

'EventReminder',

(reminder) =>console.log(reminder.name)

)

// 千萬不要忘記忘記取消訂閱, 通常在componentWillUnmount函數中實現。

subscription.remove();

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,947評論 18 139
  • 一、簡單介紹 不同于Hybrid ap,React Native里面沒有webview,iOS7中加入了JavaS...
    亂塵閱讀 1,647評論 0 10
  • 準備工作: 創建ReactNative工程 我們需要先創建一個ReactNative工程,使用如下命令創建。 re...
    五八四十閱讀 1,649評論 2 4
  • 徒步著輕屐,徐行塌軟沙。 仰觀長天云,俯賞遍地花。 喜嘗農家飯,樂品富硒茶。 萬事轉頭空,山水度年華。 注:恩施是...
    悠游魚閱讀 486評論 8 5
  • 生活不止眼前的茍且還有詩和遠方。我眼前的詩和遠方就是好好工作,認真生活,無論前方道路如何崎嶇亦或布滿荊棘,我都選擇...
    六二之阿正咿呀閱讀 94評論 0 0