我想加载开发菜单或触发重新加载而不必每次都动摇手机......因为它有点烦人。
我知道这可能是因为实时重新加载使用它。这是我在source: RCTDevMenu.h中找到的
/**
* Manually reload the application. Equivalent to calling [bridge reload]
* directly, but can be called from JS.
*/
- (void)reload;
知道如何(从JS调用重载)可以实现吗?
此外,还有一些类似的questions。
答案 0 :(得分:1)
虽然这是从obj-c而不是js调用的,但是以下使用Cocoapods在使用RN 0.43.0的iOS上解决了这个问题,并且可以帮助其他在现有iOS应用程序中嵌入RN的人:
首先确保你的Podfile中有'DevSupport'子规范:
pod 'React', :path => './js/node_modules/react-native', :subspecs => [
'Core',
'DevSupport'
]
然后导入React / RCTDevMenu.h,它在RCTBridge上提供了一个允许您访问RCTDevMenu的类别。
#import <React/RCTBridge.h>
#import <React/RCTDevMenu.h>
...
RCTBridge *bridge = [[RCTBridge alloc] initWithBundleURL:jsCodeLocation
moduleProvider:nil
launchOptions:nil];
[bridge.devMenu show];
答案 1 :(得分:0)
import { NativeModules } from 'react-native';
在您要执行重新加载的JS代码中:
NativeModules.DevMenu.reload();