在npm库的index.js中,react-native-randombytes有一行:let RNRandomBytes = require('react-native').NativeModules.RNRandomBytes
。在init()
方法中,有一个代码块包含在if语句if (RNRandomBytes.seed) { ... }
中,而这里是代码中断的地方,因为RNRandomBytes
未定义。
在调试中,我发现NativeModules
有很多与之关联的库,而不是RNRandomBytes
。我在Windows 10环境中,使用node.js和react-native通过rn-nodeify。我已经完成了react-native-crypto步骤,包括react-native link
步骤。我猜我错过了什么,有没有办法用NativeModules
填充RNRandomBytes
?
答案 0 :(得分:0)
在本地模块上注册本地模块时可以在其中找到它们。这里的问题是该软件包目前没有本机Windows实现。
更新:我仔细检查过,结果发现有一个开放的PR可以添加Windows UWP应用支持,请尝试使用fork:
npm i --save https://github.com/newomble/react-native-randombytes
答案 1 :(得分:0)
就我而言,我安装了 react-native-randombytes。也许你像我一样做了 react-native link
或 react-native link react-native-randombytes
。我打开了 podfile,它确实为我们提供了链接。但是,如果您打开 pod.lock 并查找它,它不会为我们自动安装。我去了 ios 文件夹和 pod install
,它终于起作用了。这个问题让我浪费了 5 天时间。