我正在尝试将Webpack引入使用Express.js和Node.js的应用程序中。当前不使用Webpack渲染应用的当前方法是:
src / index.js-Express.js入口点
const app = express();
app.set('views', `${__dirname/views/`);
app.set('view engine', 'hbs');
app.get('/', (req, res) => {
const viewModel;
// build viewModel:
// - use global.config object for some things
// - use a couple required modules for other things
res.render('main_app', viewModel);
}
当然,main_app.hbs
使用viewModel
。
因此,我尝试使用handlebars-webpack-plugin
渲染我的初始视图。他们的文档似乎指向使用webpack.config.js
作为向视图提供模型的方法。他们的示例说将模型作为插件配置的一部分包括在内,他们使用了一个静态json文件:
webpack.config.js
new HandlebarsPlugin({
...
// data passed to main hbs template: `main-template(data)`
data: require("./app/data/project.json"),
// or add it as filepath to rebuild data on change using webpack-dev-server
data: path.join(__dirname, "app/data/project.json")
...
}
但是我是动态生成模型的。它不仅位于json文件中。那么,仍然可以动态生成我的模型的最佳方法是什么,同时还使用此插件允许webpack进行所需的所有工作?
谢谢。