如何解决如何使Stylus在CoffeeScript中与Express和Connect配合使用
|| 我的app.coffee看起来像这样:connect = require \'connect\'
express = require \'express\'
jade = require \'jade\'
stylus = require \'stylus\'
app = express.createServer()
# CONFIGURATION
app.configure(() ->
app.set \'view engine\',\'jade\'
app.set \'views\',\"#{__dirname}/views\"
app.use connect.bodyParser()
app.use connect.static(__dirname + \'/public\')
app.use express.cookieParser()
app.use express.session({secret : \"shhhhhhhhhhhhhh!\"})
app.use express.logger()
app.use express.methodOverride()
app.use app.router
app.use stylus.middleware({
force: true
src: \"#{__dirname}/views\"
dest: \"#{__dirname}/public/css\"
compress: true
})
)
# ROUTES
app.get \'/\',(req,res) ->
res.render \'index\',locals:
title: \'Title\'
# SERVER
app.listen(1234)
console.log \"Express server listening on port #{app.address().port}\"
更新:我根本无法编写CSS文件。
解决方法
找到答案,并添加:
compile = (str,path,fn) ->
stylus(str).set(\'filename\',path).set(\'compress\',true)
, 您当然可以提供自己的编译功能,但是它会不必要地覆盖默认功能。而是在您的中间件调用中添加调试选项,并检查出问题的地方:
app.use stylus.middleware
debug: true
force: true
src: \"#{__dirname}/../public\"
dest: \"#{__dirname}/../public\"
对我来说,问题在于设置了错误的src / dest路径。您确定您的.styl文件确实位于您的views文件夹中吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。