如何使用 Webpack 2 获取数据属性内的图像?
How to get image that is within a data attrbute with Webpack 2?
我正在为我的 HTML 和标准 src
属性使用 .pug
模板,如下所示:
img(src=`../images/${image}`)
当我 运行 webpack -p
时,我的图像 src
中定义的任何图像都会被 Webpack 找到并放入我的 dist
目录中。这正是我希望发生的事情。
但是,我现在需要延迟加载我的图像,所以我想将对图像的引用放入 data-src
属性而不是标准 src
,如下所示:
img(data-src=`../images/${image}` src='data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7')
运行 webpack -p
当我再次这样做时,没有抓取图像。
有什么方法可以让 Webpack 查看非 src 属性以意识到它需要这些图像作为生产构建的一部分?
好的。原来html-loader
有个选项可以传入tag/attribute类型供loader解析通过,叫做attrs
,就是这些配置的一个数组 .
我是这样实现的:
{
test: /\.pug$/,
use: [
{
loader: 'html-loader',
options: {
attrs: ['img:src', 'img:data-src', 'link:href']
}
},
{
loader: 'pug-html-loader',
options: {
pretty: true,
exports: false
}
}
]
}
现在 运行 webpack -p
似乎可以获取这些图像。
希望这对某些人有所帮助。
选项仍然可以与 html-loader 一起使用。您可能需要改用它
https://webpack.js.org/plugins/loader-options-plugin/
我正在为我的 HTML 和标准 src
属性使用 .pug
模板,如下所示:
img(src=`../images/${image}`)
当我 运行 webpack -p
时,我的图像 src
中定义的任何图像都会被 Webpack 找到并放入我的 dist
目录中。这正是我希望发生的事情。
但是,我现在需要延迟加载我的图像,所以我想将对图像的引用放入 data-src
属性而不是标准 src
,如下所示:
img(data-src=`../images/${image}` src='data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7')
运行 webpack -p
当我再次这样做时,没有抓取图像。
有什么方法可以让 Webpack 查看非 src 属性以意识到它需要这些图像作为生产构建的一部分?
好的。原来html-loader
有个选项可以传入tag/attribute类型供loader解析通过,叫做attrs
,就是这些配置的一个数组 .
我是这样实现的:
{
test: /\.pug$/,
use: [
{
loader: 'html-loader',
options: {
attrs: ['img:src', 'img:data-src', 'link:href']
}
},
{
loader: 'pug-html-loader',
options: {
pretty: true,
exports: false
}
}
]
}
现在 运行 webpack -p
似乎可以获取这些图像。
希望这对某些人有所帮助。
选项仍然可以与 html-loader 一起使用。您可能需要改用它 https://webpack.js.org/plugins/loader-options-plugin/