问题
升级到最新的世博SDK后,我收到以下错误:
fontFamily:“material”不是系统字体,还没有通过 Font.loadAsync 加载。
我没有在任何地方使用“材料”字体,我发现它是 expo 字体的内部字体/依赖项。
我的环境
System:
OS: macOS 10.15.4
Shell: 5.7.1 - /bin/zsh
Binaries:
Node: 13.12.0 - /usr/local/bin/node
Yarn: 1.22.4 - /usr/local/bin/yarn
npm: 6.14.4 - ~/.npm/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
IDEs:
Xcode: 11.0/11A420a - /usr/bin/xcodebuild
npmPackages:
expo: ^36.0.2 => 36.0.2
react: ^16.13.1 => 16.13.1
react-native: https://github.com/expo/react-native/archive/sdk-36.0.1.tar.gz => 0.61.4
react-navigation: ^4.3.5 => 4.3.6
npmGlobalPackages:
expo-cli: 3.16.1
Expo可能创建字体的错误位置
路径: /node_modules/@expo/vector-icons/build/MaterialIcons.js
import createIconSet from './createIconSet';
import font from './vendor/react-native-vector-icons/Fonts/MaterialIcons.ttf';
import glyphMap from './vendor/react-native-vector-icons/glyphmaps/MaterialIcons.json';
export default createIconSet(glyphMap, 'material', font); <------ It looks like it's creating the font here.
//# sourceMappingURL=MaterialIcons.js.map
重现步骤
升级到最新版本的 Expo SDK (36.0.2) 将 react-native-paper 添加到项目中 制作示例屏幕 如果需要加载自定义字体
我已经采取的步骤:
- 重新启动计算机
- 删除缓存、node_modules 等并重新安装所有内容
- 尝试链接到节点模块字体并将其加载到 expo 的 loadAsync 函数中,如下所示https://github.com/oblador/react-native-vector-icons/issues/789#issuecomment-554675931
- 在本地 src 中导入字体 ttf 文件并用绝对路径链接到它。
- 在堆栈溢出类似问题中尝试过建议
- 在堆栈溢出类似问题中尝试过建议