在
我把样式表包含在
app.coffee
文件中,我有以下内容:stylus = require("stylus")
...
app.use stylus.middleware
debug: true
src: __dirname + "/stylus"
dest: __dirname + "/public/css"
compile: (src) ->
console.log(stylus(src))
return stylus(src)
我把样式表包含在
layout.jade
里,像这样:link(rel="stylesheet", href="/css/styles.css")
但是在Chrome网络选项卡中,我看到styles.css被取消了,为什么会这样?
当我直接将浏览器指向/css/styles.css
时,我得到以下结果:
无法获取/css/styles.css
出了什么问题?我该如何解决?
app.router
这一行。你几乎不需要手动更改app.router
中间件的位置,这样做几乎总会导致问题,例如此类问题。 - Peter Lyonsdest
不能是嵌套文件夹(例如__dirname + "/public/css"
)?将其更改为__dirname + "/public"
即可解决。你有什么想法为什么会这样,我相信它不是那么死板的? - Jiew Meng/stylus/css
和/public/css
)解决了它! - chrisfrancis27{src: __dirname + "/stylus", dest: __dirname + "/public/css"}
,我会期望/stylus/style.css
映射到/public/css/style.css
。相反,被接受的解决方案是传入{src: __dirname + "/stylus", dest: __dirname + "/public"}
然后mkdir stylus/stylesheets; mv stylus/*.styl stylus/stylesheets
。我理解为什么修复可以工作,但最初为什么不起作用呢?style/style.css
映射到哪里了?src
和dest
中的层次结构确实完全对应 - 它们都只有样式文件,没有目录。 - bytesized