Express 如何仅对某些类型的文件启用网页上的实时重新加载
在使用Express 如何仅对某些类型的文件启用网页上的实时重新加载,express,webpack,ejs,webpack-hmr,webpack-5,Express,Webpack,Ejs,Webpack Hmr,Webpack 5,在使用express和EJS时,我一直在为webpack的完美设置奋斗超过两天 这就是我目前的处境: 现在我已经为SCS和前端JS更改启用了HMR 我最不需要添加的是视图/ejs更改的实时重新加载。如果我将webpack.dev.js上的liveReload更改为true,它就会工作,但是HMR会在所有内容重新加载时中断 我找不到只为EJS文件更改重新加载的方法 有人有什么建议吗 谢谢大家! 伙计们,我成功了 方法是直接在beforedevServer钩子中使用chokidar: de
express
和EJS
时,我一直在为webpack
的完美设置奋斗超过两天
这就是我目前的处境:
现在我已经为SCS和前端JS更改启用了HMR
我最不需要添加的是视图/ejs更改的实时重新加载。如果我将webpack.dev.js
上的liveReload
更改为true
,它就会工作,但是HMR
会在所有内容重新加载时中断
我找不到只为EJS
文件更改重新加载的方法
有人有什么建议吗
谢谢大家! 伙计们,我成功了
方法是直接在before
devServer
钩子中使用chokidar
:
devServer: {
contentBase: "./src/",
before(app, server) {
chokidar.watch("./views").on(
"all",
debounce(function () {
console.log("THIS IS HAPPENING!!!!!!");
server.sockWrite(server.sockets, "content-changed");
})
);
},
[...rest of devServer configuration]
debounce
是一种lodash
功能。要检查完整的配置,请参考问题中的GitHub
repo,我会让它保持打开状态!:)