编程语言
首页 > 编程语言> > javascript-使用html-webpack-plugin将对象传递给ejs加载器

javascript-使用html-webpack-plugin将对象传递给ejs加载器

作者:互联网

我相信我到处都是,但是我空手而归.
我一直在使用html-webpack-plugin从我的源中加载单个index.html文件,但是我的客户端已经进行了一些本地化,所以我认为如果可以动态添加它们会很棒.

所以我试图切换到使用带有html-webpack-plugin的模板引擎,即ejs,但是我遇到了主要问题!

我想要html-webpack-plugin渲染和.ejs文件,并且我需要给上述.ejs文件一个本地化的巨大对象.

我想要这样的东西:

<h1><%= header.title %></h1>

来自本地化.json文件,如下所示:

{
  "header": {
    "title": "My Clients Super Awesome Website"
  }
}

我尝试使用两种不同的ejs webpack加载器,但我根本无法弄清楚如何将一个简单的对象传递给ejs加载器,我可以在我的ejs文件中使用它.

希望你们有一些答案:D预先感谢.

解决方法:

在index.ejs中

<%= htmlWebpackPlugin.options.header.title %>

在webpack.config.js中

module: {
    rules: [
    {
        test: /.ejs$/,
        loader: 'ejs-loader'
    }
]}

plugins: [
new HtmlWebpackPlugin({
    header: {title: 'test'},
    template: './index.ejs',
})]

注意.不要在ejs-loader之后使用选项:{variable:’data or xxx’},如果指定了变量,则htmlWebpackPlugin将是未知的.

因此,您需要在Webpack配置中使用html-webpack-plugin.并将对象放入HtmlWebpackPlugin的参数中.

标签:html-webpack-plugin,webpack,ejs,html,javascript
来源: https://codeday.me/bug/20191118/2025606.html