如何更改 Gatsby JS 中的默认 Webpack Loader?

问题描述

我正在尝试对 SVG 文件使用“svg-url-loader”而不是默认的“url-loader”。我已经安装了它,它与 webpack-inline-loaders 一起工作得很好。但是为了避免重复这个过程,我决定使用 onCreateWebpackConfig API 来更改 SVG 文件的加载器。我在 gatsby-node.js 中添加了以下代码。但是该网站现在不显示任何 SVG 图像,而是显示替代文本。 IMG 标签的 src 属性使用的是错误的 base64 编码图像,而不是 UTF8 编码的 SVG XML 标签。

控制台没有记录任何错误。我在 /plugins 目录中创建了一个本地插件,但它也不起作用。我正在本地机器上开发我的网站并使用 Gatsby Cloud 构建它。问题在两个地方仍然存在。任何帮助将不胜感激。谢谢。

这是 minimal repro 的链接。

exports.onCreateWebpackConfig = ({
  stage,getConfig,rules,loaders,plugins,actions,}) => {
  actions.setWebpackConfig({
    module: {
      rules: [
        {
          test: /\.svg/,use: {
            loader: "svg-url-loader",options: {
              limit: 4096,iesafe: true,},],});
};

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...