首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >两个svgo加载器冲突

两个svgo加载器冲突
EN

Stack Overflow用户
提问于 2017-06-04 08:31:21
回答 1查看 3.2K关注 0票数 2

我正在使用webpack构建svg-sprite。

但也有一个问题:部分图标有多种颜色,另一部分是- only图标。它们是按原样使用的。

一个颜色图标应根据:hover / :active更改颜色。

而且,根据这一点,我应该清除一个彩色图标的填充属性。

我不能用多色的。

我决定把它们分开到不同的文件夹中,创建两个webpack规则:

代码语言:javascript
运行
复制
{
  test: /icon\/.*\.svg$/,
  loaders: [
    'svg-sprite-loader',
    {
      loader: 'svgo-loader',
      options: {
        plugins: [
          // ...
        ],
      },
    },
  ],
},
{
  test: /monoicon\/.*\.svg$/,
  loaders: [
    'svg-sprite-loader',
    {
      loader: 'svgo-loader',
      options: {
        enforce: 'pre',
        plugins: [
          // ...
          { removeAttrs: { attrs: '(fill|stroke)' } },
        ],
      },
    },
  ],
},

一切都很好,但实际上不起作用。我正在进入控制台:

代码语言:javascript
运行
复制
…/monoicon/cross.svg
Module build failed: Error: Error in parsing SVG: Non-whitespace before first tag.
Line: 0
Column: 1
Char: i…

挖掘我发现的网络:

我装货的方式出了问题。当您要覆盖其他加载程序时,您需要前缀require("-!... ..。

https://github.com/jhamlet/svg-react-loader/issues/3#issuecomment-146334228

因此,看起来问题的根源在于我必须使用svgo-loader进行规则。重写webpack加载器规则,在每个svg导入- kinda糟糕的想法。那我怎么才能以适当的方式解决这个问题呢?

致以问候。

EN

Stack Overflow用户

回答已采纳

发布于 2017-06-04 09:29:10

我是个白痴。编写regexp的:

代码语言:javascript
运行
复制
/\/icon\/.*\.svg$/
/\/monoicon\/.*\.svg$/
票数 5
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44352194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档