Stylus 和 CoffeeScript 中间件会自动为您编译任何 Stylus 和 CoffeeScript 代码,而无需重新启动您的应用程序,例如,您可以编辑 .styl 文件,只需刷新浏览器中的页面,您的更改就会出现。我发现这在开发时非常方便,但这会严重影响最终用户在生产中的页面加载时间吗?
我的 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'
最佳答案
它肯定会比静态提供预编译文件慢(如果 Stylus 和 CoffeeScript 不支持缓存,我不知道)。问题是,这是否重要。这取决于您的应用收到的流量强度。
一般来说,我建议预编译您的文件并静态提供它。对于部署,我建议使用 Gulp.js 之类的东西并观察你的文件。使用 gulp,您的文件可以在文件更改时自动编译,这在大多数情况下比在请求文件时编译要好。
关于node.js - 使用 Stylus 和 CoffeeScript 中间件是否会降低 Node.js Express 应用程序的速度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26150848/