Expo环境下react-native-google-places-autocomplete组件崩溃求助:crypto.getRandomValues()不支持
Expo环境下react-native-google-places-autocomplete组件崩溃求助:crypto.getRandomValues()不支持
嘿,我之前也碰到过一模一样的问题!这个报错其实是因为你用的react-native-google-places-autocomplete@2.5.7依赖的uuid包需要调用crypto.getRandomValues()这个API,但Expo环境里默认没有全局提供这个API,所以才会直接崩溃。
给你两个亲测有效的解决思路,你可以按顺序试试:
首先安装Expo官方提供的crypto补全库
打开终端运行这个命令:npx expo install expo-crypto然后在项目的入口文件(比如
App.js或者index.js)最顶部,添加一段全局API注入的代码
这样就能让组件找到它需要的crypto.getRandomValues()方法了:import * as Crypto from 'expo-crypto'; // 全局补全crypto API if (!global.crypto) { global.crypto = { getRandomValues: (array) => Crypto.getRandomValues(array), }; }
完成这两步之后,重启你的Expo项目,应该就不会再出现这个崩溃报错了。我当时就是靠这个方法搞定的,你可以试试看!
备注:内容来源于stack exchange,提问作者Eric Uche
相关产品推荐
相关产品推荐

