Express如何指向动态命名的资产来呈现一些动态视图?
动态视图:
res.render('index', {
title: someDynamicVariable
});
动态生成并命名的资产:
function js() {
return src('./src/client/js/index.js')
.pipe(rev())
.pipe(
webpackStream(webpackConfig),
webpack
)
.pipe(dest('./dist/assets'));
}
JS被编译为/dist/assets
。
每次更改bundle-9878139898jc29872.js
都会重新生成其名称。
连接视图。
该视图具有指定为用脚本标签和样式标签替换的点,这些脚本标签和样式标签指向/dist
中动态生成的资产。
doctype html
html
head
title the layout title
//- inject:js
//- endinject
//- inject:css
//- endinject
body
#nav
block content
要实现这一点,请运行以下任务...
function injectInHTML() {
const assets = src(['./dist/**/*.js', './dist/**/*.css'], { read: false });
return src('./src/server/views/layout.pug')
.pipe(inject(assets))
.pipe(dest('./dist/views'));
}
function html() {
return src('./src/server/views/*.pug')
.pipe(pug())
.pipe(dest('./dist/views'));
}
问题。
但是,此时pug
模板位于dist
中。他们已经注入了正确的脚本/样式标签。但是它们不再是“动态的”。它们只是HTML文件。
如何同时具有动态视图和指向/注入动态资产的视图?