Проверка правил модуля Webpack: сопоставление файлов, содержащих заданный параметр c - PullRequest
0 голосов
/ 06 марта 2020

Я хочу отобразить некоторые указанные c изображения в виде data-uri вместо ссылки на местоположение изображения. Для этого я использую url-загрузчик.

Вот мой HTML (шаблон мопса):

img.loading(:src="require('@/images/spinner.png?inline')")

И мой конфиг, связанный с веб-пакетом:

     {
        test: /\.(png|jpg|gif|svg|ico)\?inline$/,
        loader: 'url-loader',
        options: {
          limit: 135000,
          name: 'img/[name].[hash].[ext]',
          esModule: false
        }
      },
      {
        test: /\.(png|jpg|gif|svg|ico)$/,
        loader: 'file-loader',
        options: {
          name: 'img/[name].[hash].[ext]',
          esModule: false
        },

Другие изображения загружаются нормально, но встроенные нет. Могу ли я использовать такие параметры в имени файла?

1 Ответ

2 голосов
/ 12 марта 2020

resourceQueries может быть лучшей ставкой:

{
    test: /\.(png|jpg|gif|svg|ico)$/,
    resourceQuery: /inline/
    loader: 'url-loader',
    options: {
      limit: 135000,
      name: 'img/[name].[hash].[ext]',
      esModule: false
    }
  },
  {
    test: /\.(png|jpg|gif|svg|ico)$/,
    loader: 'file-loader',
    options: {
      name: 'img/[name].[hash].[ext]',
      esModule: false
    }

Обратите внимание, что оба правила будут обработаны, так как image.jpg?inline изображение будет соответствовать обоим правилам, поэтому вам придется настроить отдельный resourceQuery

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...