Nic*_*cky 6 javascript node.js webpack html-webpack-plugin
我使用Webpack和插件html-webpack-plugin
.基于环境变量,我想<meta></meta>
在最终index.html
文件中注入一个标签.
我该怎么做呢?
Mic*_*ngo 18
您可以定义自己的模板.在编写自己的模板时简要提到,您可以传递任何您想要的选项,并在模板中使用它们htmlWebpackPlugin.options
:
htmlWebpackPlugin.options
:传递给插件的选项哈希.除了此插件实际使用的选项之外,您还可以使用此哈希将任意数据传递到模板.
例如,您可以使用环境变量定义作者AUTHOR
并author
为插件添加选项:
new HtmlWebpackPlugin({
template: 'template.ejs',
author: process.env.AUTHOR
})
Run Code Online (Sandbox Code Playgroud)
在你的template.ejs
,你可以创建一个<meta>
与信息标签:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<% if (htmlWebpackPlugin.options.author) { %>
<meta name="author" content="<%= htmlWebpackPlugin.options.author %>">
<% } %>
</head>
<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
您可以使用.html
文件而插件将回退ejs-loader
,但如果您已html-loader
配置.html
文件,它将使用该文件而不是回退,因此嵌入将无效.
当AUTHOR
设置将包括与作者的meta标签,否则它不包括在内.运行:
AUTHOR='Foo Bar' webpack
Run Code Online (Sandbox Code Playgroud)
将包含以下元标记:
<meta name="author" content="Foo Bar">
Run Code Online (Sandbox Code Playgroud)
new HtmlWebpackPlugin({
template: 'index.html',
meta: {
author: process.env.AUTHOR
}
});
Run Code Online (Sandbox Code Playgroud)
导致在您的 head 标签中包含以下内容。
<meta name="author" content="Foo Bar">
归档时间: |
|
查看次数: |
7909 次 |
最近记录: |