Webpack объединяет html-загрузчик с файловым загрузчиком для копирования шаблонов

То, что я пытаюсь сделать, это объединить html-loader скопировать ресурсы, на которые есть ссылки из HTML-шаблонов, например <img src="some/path/here.jpg" /> а также file-loader скопировать эти HTML-шаблоны в папку пакета. Я не хочу вставлять эти HTML-файлы непосредственно в комплект javascript.

Я думал, что это будет работать, но это не так:

{
    test: /\.html$/,
    loaders: ['file-loader?name=templates/[name]-[hash].[ext]', 'html-loader']
},
{
    test: /\.jpg$/,
    loader: 'file-loader?name=assets/[name]-[hash].[ext]'
}

Я получаю это в своем скопированном HTML-шаблоне:

module.exports = "<img src=\"" + require("../img/image.jpg") + "\" />";

Любая помощь приветствуется.

РЕДАКТИРОВАТЬ

уточнить.

мой HTML-шаблон имеет следующее содержание:

<img src="../img/image.jpg" />

После запуска веб-пакета image.jpg не копируется в assets/ папка. HTML-шаблон копируется в templates/ папка, но ее содержимое:

module.exports = "<img src=\"" + require("../img/image.jpg") + "\" />";

тогда как я хотел бы, чтобы это было:

<img src="../assets/image-webpackHashHere.jpg" />

и, конечно, изображение должно быть скопировано туда под вычисленным именем (с хешем).

0 ответов

Другие вопросы по тегам