Sil*_*Imp 2 svg reactjs webpack
我正在使用webpack构建 svg-sprite。
\n但有一个问题:部分图标有多种颜色,而部分\xe2\x80\x94\xc2\xa0只有一种颜色。它们按原样使用。
\n一种颜色图标应根据:hover/改变颜色:active。
并且,根据此我应该清理一种颜色图标的填充属性。
\n我无法用多色的来做到这一点。
\n我决定将它们分开到不同的文件夹并创建两个 webpack 规则:
\n{\n test: /icon\\/.*\\.svg$/,\n loaders: [\n \'svg-sprite-loader\',\n {\n loader: \'svgo-loader\',\n options: {\n plugins: [\n // ...\n ],\n },\n },\n ],\n},\n{\n test: /monoicon\\/.*\\.svg$/,\n loaders: [\n \'svg-sprite-loader\',\n {\n loader: \'svgo-loader\',\n options: {\n enforce: \'pre\',\n plugins: [\n // ...\n { removeAttrs: { attrs: \'(fill|stroke)\' } },\n ],\n },\n },\n ],\n},\nRun Code Online (Sandbox Code Playgroud)\n一切都很好,但实际上不起作用。我进入控制台:
\n\xe2\x80\xa6/monoicon/cross.svg\nModule build failed: Error: Error in parsing SVG: Non-whitespace before first tag.\nLine: 0\nColumn: 1\nChar: i\xe2\x80\xa6\nRun Code Online (Sandbox Code Playgroud)\n挖掘网络我发现:
\n\n\n这是我加载方式的问题。
\nrequire("-!...当你覆盖其他加载器时,你需要添加前缀......
https://github.com/jhamlet/svg-react-loader/issues/3#issuecomment-146334228
\n所以看起来问题的根源在于我必须遵守svgo-loader. 在每个 svg import \xe2\x80\x94\xc2\xa0 中重写 webpack 加载器规则,有点糟糕的想法。那么我该如何以适当的方式解决这个问题呢?
问候。
\n| 归档时间: |
|
| 查看次数: |
3512 次 |
| 最近记录: |