webpack - 如何在 index.html 模板中引用图片资源
问题描述
在我导出为的模板中index.html
,我有这一行:
<meta name="og:image" content="/assets/images/image.jpg">
我的目标是使用散列名称导出它:
<meta name="og:image" content="/assets/images/image.hug2u3g5gx23g.jpg">
相反,它以原始名称导出。
我的intex.html
模板加载为:
new HtmlWebpackPlugin({
template: './app.ejs',
filename: 'index.html',
chunksSortMode: (a, b) => scriptsOrder.indexOf(a.names[0]) > scriptsOrder.indexOf(b.names[0]),
env: {isProd, isWeb, isHybrid}
})
这是我的文件加载器:
{
test: /\.(png|jpg|jpeg|gif|eot|svg|ttf|woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$)/,
use: [
{loader: 'file-loader', options: {name: '[path][name].[hash].[ext]', context: './src'}},
{loader: 'image-webpack-loader', options: {}}
]
}
解决方案
在ejs -> index.html
模板中,像这样插入图像文件:
<meta name="og:image" content="<%- require('./assets/images/image.jpeg') %>">
推荐阅读
- php - 您的 SQL 语法有错误;查看与您的 MariaDB 服务器版本相对应的手册,了解在第 1 行的“1”附近使用的正确语法
- asynchronous - Shiny - 在执行异步任务时更改 actionButton 的颜色
- r - 使用 plot3D 更改图形的轴标题相对于轴本身的距离或旋转
- javascript - 最后开始读取 json 文件
- mysql - 当我在 amazon-ec2 中访问 mysqldb 时,远程访问被拒绝。(1045,“用户'user-name'@'some-ip'的访问被拒绝)
- javascript - 在带有 JS 的自定义类中调用 onmousedown 和 onclick
- android - ConstraintLayout 使用模拟器运行后是无序的
- java - java.io.IOException 连接由异步 http 客户端中的对等方重置
- c# - 如何自定义 text-danger 给出的验证错误消息?
- python - Python删除数组中的特定值