代码之家  ›  专栏  ›  技术社区  ›  crowhill

React应用程序无法仅在Windows上处理SVG图像

  •  2
  • crowhill  · 技术社区  · 7 年前

    我有一个在OSX上运行良好的React应用程序,但由于SVG,它在Windows上快死了:

    Module parse failed: Unexpected token (2:0)
    You may need an appropriate loader to handle this file type.
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="...">
    

    我怀疑问题在于两个操作系统之间的regex意见不同(或者可能是对斜杠的不同解释)?路径?)但那只是因为我不知道出了什么问题。

    可能与Webpack中的几个.svg加载程序之一相关:

    test: /\.svg$/,
    include: /src\/assets/,
    exclude: /src\/assets\/images/,
    

    我知道这没什么可谈的,但我不知道还包括什么。如果还有其他有用的信息,我很乐意编辑这个问题。

    同样,该应用程序在OSX上构建良好。它不会建立在窗口上。

    1 回复  |  直到 7 年前
        1
  •  2
  •   crowhill    7 年前

    斜线。

    这在Windows上不起作用:

    test: /\.svg$/,
    include: /src\/assets/,
    exclude: /src\/assets\/images/,
    

    这个 工作:

    test: /\.svg$/,
    include: /src(\/|\\)assets/,
    exclude: /src(\/|\\)assets\/images/,
    

    正斜线 反斜杠。在OSX/Linux上也不会破坏任何东西

    here