添加expo-modules-core后React Native+Expo应用出现字体模块解析错误
解决 Expo 项目添加 expo-modules-core 后无法解析 MaterialCommunityIcons.ttf 的问题
错误信息
error: Error: Unable to resolve module
./vendor/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf
from
/home/alavi/IdeaProjects/3d-viewer/shopconnect-mobile/node_modules/@expo/vector-icons/build/MaterialCommunityIcons.js
当前项目依赖版本
{ "expo": "^47.0.0", "expo-asset-utils": "^3.0.0", "expo-gl": "~12.0.1", "expo-modules-core": "^1.1.1", "expo-three": "^7.0.0", "expo-three-orbit-controls": "^2.0.0", "formik": "^2.2.6", "mediasoup-client": "^3.6.29", "moment": "^2.29.1", "prettier": "^2.2.1", "react": "18.1.0", "react-native": "0.70.6", "three": "^0.133.1" }
解决方案
清理缓存并重装依赖
- 删除项目根目录下的
node_modules文件夹和package-lock.json/yarn.lock文件 - 执行
npm install或yarn install重新安装依赖 - 运行
expo r -c清除Expo缓存并重启项目
- 删除项目根目录下的
适配@expo/vector-icons版本
Expo 47对应的@expo/vector-icons建议使用^13.0.0版本,修改package.json后重新安装依赖:"@expo/vector-icons": "^13.0.0"手动配置字体资源
在app.json或app.config.js中添加字体资源路径,确保字体被正确识别:"expo": { "assets": [ "./node_modules/@expo/vector-icons/fonts/" ] }配置完成后重启开发服务器,裸项目需额外执行
expo prebuild移除冲突的expo-modules-core
Expo 47已内置适配版本的expo-modules-core,手动安装的^1.1.1可能引发冲突,执行以下命令卸载:npm uninstall expo-modules-core之后重装依赖并重启项目
内容的提问来源于stack exchange,提问作者Sachin Mishra
相关产品推荐
相关产品推荐

