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" />
и, конечно, изображение должно быть скопировано туда под вычисленным именем (с хешем).