Stylus和CoffeeScript中间件可以自动为您编译任何Stylus和CoffeeScript代码,而无需重新启动应用程序,例如,您可以编辑.styl文件,只需在浏览器中刷新页面即可进行更改。我发现这在开发过程中非常方便,但这会严重影响最终用户在生产中的页面加载时间吗?
My Express设置通常是这样的(CoffeeScript):
app = express()
app.set 'views', __dirname + '/views'
app.set 'view engine', 'jade'
compile = (str, path) -> return stylus(str).set 'filename', path
app.use stylus.middleware {
src: __dirname + '/stylus',
dest: __dirname + '/assets/css',
compile: compile
}
app.use coffee {
src: __dirname + '/coffee',
dest: __dirname + '/assets/js',
encodeSrc: false
}
app.use express.static __dirname + '/assets'
答案 0 :(得分:0)
它肯定比静态提供预编译文件慢(如果Stylus和CoffeeScript不支持我不知道的缓存)。问题是,这是否重要。这取决于您的应用获得的流量强度。
一般情况下,我建议您预先编译文件并静态提供。对于部署,我建议使用像Gulp.js这样的东西并观察你的文件。通过gulp,您可以在文件更改时自动编译文件,这比在请求文件时编译文件更好。