You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native链接自定义字体报Unrecognized command "link"错误

报错原因

执行npx react-native link提示Unrecognized command "link",是因为React Native 0.69及后续版本已经正式移除了内置的link命令,这个旧版用于自动链接原生模块、静态资源的命令已经不再内置在新版CLI中。

解决方法

方案1:使用新版资源链接工具(推荐,适配所有0.60+版本)

新版RN的自定义字体等静态资源链接,不需要依赖旧的link命令,按以下步骤操作即可:

  • 在项目根目录新建assets/fonts文件夹,将所有需要引入的.ttf、.otf格式字体文件放入该目录
  • 在项目根目录新建(或修改已有的)react-native.config.js文件,添加资源路径配置:
module.exports = {
  project: {
    ios: {},
    android: {},
  },
  assets: ['./assets/fonts/'],
};
  • 安装资源链接工具并执行链接操作:
    1. 先全局安装工具:执行npm i -g react-native-asset,使用yarn的话执行yarn global add react-native-asset
    2. 项目根目录下执行npx react-native-asset完成资源自动挂载
  • iOS端额外进入ios目录执行pod install,之后重新编译双端项目即可正常引用自定义字体

方案2:手动挂载字体(无额外依赖,适合特殊定制场景)

如果不想安装额外工具,可以手动完成双端字体挂载:

  • Android端:逐层创建android/app/src/main/assets/fonts目录,将字体文件直接放入该目录,重新编译打包即可自动识别
  • iOS端:打开ios目录下的.xcworkspace工程文件,将字体文件拖入Xcode的项目资源导航栏,勾选Copy items if needed选项;接着在Info.plist文件中添加Fonts provided by application配置项,将所有引入的字体文件名(带后缀)填入对应数组,最后执行pod install重新编译即可
避坑提示
  • 不要为了用link命令刻意降级React Native CLI版本,极易引发依赖版本冲突,后续升级维护成本极高
  • 字体文件命名尽量避免中文、特殊符号、不规则空格,否则可能出现编译期识别失败的问题
  • 代码中引用字体时,需要填写字体的内置PostScript名称而非文件名,iOS端可通过系统自带的字体册工具查看,Android端可优先用文件名测试,若不生效再查询字体内部名

内容的提问来源于stack exchange,提问作者max

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 11:57:19