Как импортировать SVG-файлы и использовать их для SRC в изображении - PullRequest
0 голосов
/ 02 октября 2018

Я столкнулся с проблемой, которую не могу решить.

У меня есть файл SVG, который мне нужно включить в мой проект.Поскольку я построил свой собственный шаблон, я хочу иметь ту же функциональность, что и CRA , в том смысле, что я могу использовать svg в качестве образа src.

т.е.

<img src={svgfile} alt="some file" />

Что мне нужно сделать, чтобы иметь такую ​​функциональность?
Я пытался использовать загрузчик файлов, чтобы заставить его работать, но он выдает ошибку.

{
    test: /\.(png|jpg|gif|svg)$/,
    use: [
      {
        loader: "file-loader",
        options: {}
      }
    ]
  },

Любая помощь будет принята с благодарностью.

SA

файл веб-пакета

{
  entry: "./src/browser/index.js",
  output: {
    path: path.resolve(__dirname, "public"),
    filename: "bundle.js",
    publicPath: "/"
  },
  module: {
    rules: [
      { test: /\.(js)$/, use: "babel-loader" },
      {
        test: /\.(png|jpg|gif|svg)$/,
        use: [
          {
            loader: "file-loader",
            options: {}
          }
        ]
      },
    ]
  },
  plugins: [
    new webpack.DefinePlugin({
      __isBrowser__: "true"
    })
  ]
}

Ответы [ 2 ]

0 голосов
/ 02 октября 2018

Вы можете попробовать что-то вроде:

test: /\.(?:png|jpg|gif|svg)$/i,
use: [
  {
    loader: 'file-loader',
    options: {
      name: 'assets/[hash].[ext]',
    }
  },
]

Где assets - каталог, в котором импортированный файл будет сохранен после сборки.

0 голосов
/ 02 октября 2018

Мне нравится

 import svgfile from “./path/fileName.svg”;

 <img src={svgfile} alt="some file" />

Или

<img src={require(“./path/fileName.svg”} alt="some file" />

Прошу прощения за двойные кавычки, на которые я отвечаю в мобильном телефоне

...