【问题标题】:Google Font does not import into React native app谷歌字体不会导入到 React 本机应用程序中
【发布时间】:2019-12-10 12:36:08
【问题描述】:

我正在尝试将 google 字体中的字体导入我的 RN 应用程序。但是,我遇到了一个问题,它告诉我字体无法识别。这是我所做的:

我下载了字体并添加到 assets 文件夹中:

/assests/fonts/

像这样设置我的 package.json:

"rnpm": {
"assets": [
"./assets/fonts/"
   ]
 }

在终端中运行以下内容:

react-native link

我还进入了 ios 的 Info.plist 文件并手动添加了字体,因为链接后它没有这样做:

<key>UIAppFonts</key>
    <array>
        <string>Lacquer-Regular.ttf</string>
    </array>

最后,我在 vscode 的页面上将它标记为这样。

fontFamily: "Lacquer-Regular"

关于可能发生的事情以及如何解决的任何想法?

【问题讨论】:

  • 你用的是什么版本的 RN?
  • @Train react-native: 0.60.3
  • 不确定这是否是您的原因,但您提到的文件夹名称 (/assets/fonts/) 的名称中有一个额外的“s”。这也可以解释为什么 npm 链接不能立即工作?
  • @csb00 在它的工作下尝试我的解决方案
  • @csb00 你试过我在下面发布的工作解决方案了吗?

标签: react-native google-font-api google-fonts


【解决方案1】:

对于使用 react-native version > 0.60 的用户,'rnpm' is deprecated 和自定义字体将无法使用。

现在,为了在 react-native 版本 > 0.60 中添加自定义字体,您必须:

1- 在项目的根文件夹中创建一个名为 react-native.config.js 的文件。

2- 在新文件中添加这个

module.exports = {
  assets: ['./assets/fonts/']
};

3- 在根项目路径下运行react-native link 命令。

PS在运行react-native link命令之前确保你有正确的字体文件夹路径

【讨论】:

    【解决方案2】:

    "./assets/fonts/" 此路径是否包含文件? Lacquer-Regular.ttf

    如果您没有文件,请添加并link

    当您创建link 时,应该会出现以下结果:

    如果一个链接没有目标,它可以通过做所有的链接来影响项目。尽可能直接链接到路径。

    react-native link ./assets/fonts
    

    【讨论】:

      猜你喜欢
      • 2018-08-18
      • 2018-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-17
      • 1970-01-01
      • 2014-03-07
      • 1970-01-01
      相关资源
      最近更新 更多