需要反应原生的SVG

时间:2016-01-31 21:29:31

标签: javascript svg react-native

我创建了一个在WebView内显示SVG图像的简单组件。当我从远程服务器获取SVG时,这很好用。但是,我想在我的包中包含SVG并从我的组件中获取它。 使用require('image.svg')会导致无法解析模块错误消息。

2 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,并注意到错误中显示的路径并不完全正确。我必须require('./image.svg')或者如果你把它放在一个单独的文件夹中,比如资产,那就是require('./assets/image.svg')。此相对路径必须根据您当中的任何文件来确定。因此,如果您在index.ios.js并且想要要求具有以下文件夹结构的图像文件: . ├── index.ios.js └── assets ├── image.svg └── image2.png 使用require('./assets/image.svg')。希望这有帮助!

答案 1 :(得分:0)

可能回答得有点晚,但这很好用

只需将包含.svg的文件夹添加到package.json资产,如自爆

"jest": {
    "preset": "react-native"
  },
  "rnpm": {
    "assets": [
      "./images" // <--- add your image folder here
    ]
  }

现在您的.svg文件可以在require('./images/your_svg_file.svg')中访问

那么请不要忘记尝试使用此命令react-native link