无法使用 Webpack 加载 font-awesome [重复]

2023-11-22

尝试使用 webpack 加载 font-awesome 会出现以下错误:

ERROR in ./~/font-awesome/fonts/fontawesome-webfont.eot?v=4.6.3
Module parse failed: ...\node_modules\font-awesome\fonts\fontawesome-webfont.eot?v=4.6.3 Unexpected character '�' (1:0)
You may need an appropriate loader to handle this file type.

我正在尝试在 React 组件中导入 font-awesome,如下所示:

import "font-awesome/scss/font-awesome.scss";

这是我的 webpack.config.js 的样子。我想将 font-awesome 和相关资源与其他资源分开加载,即因为我已经使用 babel 加载了 SVG,但不想使用 font-awesome 来加载。

{
    test: /\.scss/,
    loader: ExtractPlugin.extract("style", "css!sass")
},
{
    test: /\.svg$/,
    loader: "babel!svg-react",
    exclude: /node_modules/
},
{
    test: /\.ttf$/,
    loader: "file-loader?mimetype=application/octet-stream&name=[name].[ext]",
    exclude: /node_modules/
},
{
    test: /\.woff(\?v=\d+\.\d+\.\d+)?$/,
    loader: "url?limit=10000&mimetype=application/font-woff&name=[name].[ext]",
    exclude: /node_modules/
},
{
    test: /\.(otf|eot|png|svg|ttf|woff|woff2)(\?[\s\S]+)?$/,
    loader: "url?limit=10000",
    include: "node_modules/font-awesome/fonts"
}

我也尝试过像这样执行正则表达式,但它不起作用:

{ test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/, loader: "url?limit=10000" }

要正确加载 font-awesome 字体,您需要在 webpack.config.js 中配置加载器以使用 url-loader 和 file-loader。例子:

module.exports = {
  module: {
    loaders: [
      // the url-loader uses DataUrls. 
      // the file-loader emits files. 
      { 
        test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/, 
        loader: "url-loader?limit=10000&mimetype=application/font-woff" 
      },
      { 
        test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, 
        loader: "file-loader" 
      },
    ]
  }
};

为此,您需要 npm install font-awesome-sass-loadernpm i font-awesome-sass-loader您还需要 url-loadernpm i url-loader和文件加载器npm i file-loader

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法使用 Webpack 加载 font-awesome [重复] 的相关文章

随机推荐

  • Linux命令以树的形式打印目录结构

    是否有任何我可以从 Bash 脚本调用的 linux 命令 该命令将以树的形式打印目录结构 例如 folder1 a txt b txt folder2 folder3 这就是您要找的吗tree 它应该存在于大多数发行版中 也许作为可选安装
  • 我可以假设 sizeof(uint8_t) = 1 吗?

    我有一个程序 对 uint8 t 数组使用动态分配 我可以安全吗 假设它的长度总是一个字节 If uint8 t存在 那么sizeof uint8 t 必须是 1 uint8 t is required宽度恰好为 8 并且没有填充位 并且C
  • 使用 browserify 填充 jQuery 插件

    您好 我正在使用 grunt browserify 任务来设置我的代码 我已经在 jQuery 中进行了填充 现在我正在尝试包含 jquery tablesorter jquery插件可以这样与browserify一起使用吗 shim jq
  • PerformSelector:withObject:afterDelay:无法从scrollViewDidZoom工作

    我觉得我应该知道这一点 但我已经被难住了好几个小时 而且我已经没有想法了 原理很简单 用户使用捏合操作来操纵滚动视图中的缩放和定位 如果他们捏捏的时间很短 那么滚动视图就会记录缩放级别和内容偏移量 所以我想我应该在scrollViewDid
  • 类的 mro 方法和 __mro__ 属性有什么区别?

    我偶然发现了这个额外的 无下划线的mro我使用时的方法 metaclass abc ABCMeta 似乎是一样的 mro 只是它返回一个列表而不是元组 这是一个随机示例 创意片段 import abc import copy class L
  • 如何在 Ruby 中临时重定向 stderr?

    我想在一个块的持续时间内临时重定向 Ruby 脚本中的 stderr 确保在块结束时将其重置为其原始值 我很难在 ruby 文档中找到如何做到这一点 在红宝石中 stderr指的是输出流目前使用的作为标准错误 而STDERR is the
  • 如何使用 OnItemClick 从列表视图中检索单击的字符串?

    我这里有一些问题 它看起来很简单 我一直在寻找它的解决方案 不幸的是 我找不到任何东西 这是我的问题 我想做的是从项目单击方法中获取列表视图中显示的字符串 这是我的列表视图 lol hi waw 当我单击 lol 时 我想获取 lol 字符
  • 容器视图控制器 - 通知父级操作

    假设我有一个自定义容器视图控制器 MainViewController 我在其中执行如下操作 void viewDidLoad super viewDidLoad HomeViewController homeVC HomeViewCont
  • C++ 保留字作为 C 结构体中的函数指针名称

    我怀疑我已经知道这个问题的答案 但我很好奇是否有专家有任何技巧 我有一个旨在成为 C 框架的 C 库 未使用不安全函数 类似的跨平台命名约定等 这工作得很好 直到我尝试在 C 项目中使用它 其中 C 命名空间 函数名称与 C 保留字冲突 在
  • 在 ListView 顶部显示新项目

    我正在使用列表来填充 ListView 用户可以将项目添加到列表中 但是 我需要将项目显示在 ListView 的顶部 如何在列表开头插入项目以便以相反顺序显示它 默认情况下列表在底部添加元素 这就是为什么您添加的所有新元素都会显示在底部
  • python: Windows 相当于 SIGALRM

    我有这个装饰器 def timed out timeout def decorate f if not hasattr signal SIGALRM return f def handler signum frame raise Timed
  • 获取 Google 访问令牌

    要在 firebase 身份验证登录后获取 Google 访问令牌 我知道我可以简单地执行以下操作 firebase auth signInWithPopup provider then function result var token
  • 信誉良好的地理 IP 定位服务 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 谁是一些信誉良好和 或稳定的地理 IP 定位服务提供商 我正在指定一个需要此功能的应用程序 每当我搜索 geo ip 时 我都会得到大量的点击 但很
  • 如果 Sql Compact 允许多个连接,为什么我会收到文件共享错误?

    Here据说Sql Server Compact最多允许256个连接 但是当我尝试打开 2 个连接时 我收到文件共享错误 我该如何解决这个问题 SqlCeConnection c1 new SqlCeConnection Data Sour
  • 如何在 Quarkus 应用程序中设置 H2 数据库控制台 url

    Spring boot 应用程序提供了一个属性来设置 H2 数据库的 Web 控制台 URL spring h2 console path h2 有没有办法在 Quarkus 应用程序中设置相同的属性 如果不是那么默认是什么 Web 控制台
  • 如何使用 Content-Encoding 读取压缩的 HTML 页面:gzip

    我请求一个发送内容编码 gzip标题 但卡住了如何阅读它 My code try URLConnection connection new URL http jquery org openConnection String html Buf
  • PHP in_array() 的性能很糟糕。搜索数组值的最快方法

    我有以下简单的代码来测试我正在创建的主键上的冲突 machine ids array for i 0 i lt 100000 i Generate machine id returns a 15 character alphanumeric
  • 如何在 Django 上引发多个 ValidationError?

    from rest framework exceptions import ValidationError def to representation self request data raise ValidationError fiel
  • Python - 一次从文件中读取 1000 行

    我查过this this and this 第三个链接似乎有答案 但它没有完成任务 我无法找到将整个文件放入主内存的解决方案 因为我将使用的文件将非常大 所以我决定使用islice如第三个链接所示 前 2 个链接无关紧要 因为它们仅使用了
  • 无法使用 Webpack 加载 font-awesome [重复]

    这个问题在这里已经有答案了 尝试使用 webpack 加载 font awesome 会出现以下错误 ERROR in font awesome fonts fontawesome webfont eot v 4 6 3 Module pa