React Native添加自定义字体时报“path参数必须为字符串”错误如何解决
React Native自定义字体link报错修复方案
这个报错是因为新版React Native CLI已废弃使用全局react-native link命令处理静态资源,命令执行时读取不到资源配置对应路径参数导致的。
1. 补全配置文件
首先确认你的react-native.config.js有完整的导出声明,你贴出的配置缺少开头的导出语句,完整配置如下:
module.exports = { project: { ios: {}, android: {}, }, assets: ['./assets/fonts/'], };
配置文件需放在项目根目录,和package.json同级。
2. 使用专用的静态资源链接命令
旧版react-native link仅用于链接第三方原生库,处理静态资源(含字体)需使用react-native-asset工具,直接执行以下命令即可:
npx react-native-asset
命令执行后会自动将字体文件同步到安卓和iOS的原生项目对应目录中。
3. 验证生效
执行完命令后重新编译原生项目:
- 安卓端检查
android/app/src/main/assets/fonts目录下是否存在Bungee.ttf - iOS端打开Xcode项目,检查
Info.plist的UIAppFonts字段是否已添加Bungee.ttf条目,同时确认字体文件在Build Phases -> Copy Bundle Resources列表中
额外注意
- 字体文件名建议和字体内部的family名称保持一致,避免iOS和安卓两端调用时字体名不统一的问题
- 每次新增/修改字体文件后都需要重新执行资源链接命令,再编译原生项目才能生效
内容的提问来源于stack exchange,提问作者RoBrT
相关产品推荐
相关产品推荐

