私はスタイラス0.37.0でexpress.js 3.4.0を実行しています。エクスプレスとスタイラスを連携させようとしています。そのため、実際には別の場所にあるスタイラスファイルであるcssファイルをリクエストすると、エクスプレスがスタイラスをトリガーしてコンパイルしてから提供します(多くのチュートリアルで動作しているように見えるので、かなり標準的だと思います)。
私のファイル構造:
myApp
resources
stylus
style.styl
public
css
私の app.js (関連する行のみ):
app.use("/static", express.static(__dirname + "/public"));
app.use(stylus.middleware({
src: __dirname + "/resources/stylus",
dest: __dirname + "/public/css",
debug: true,
force: true,
}));
私が読んだことから、要求/static/css/style.cssすると、このファイルを高速で生成してからresources/stylus/style.styl提供する必要があります。これは動作しません。/style.cssファイルが正しく生成されるようにファイルを要求した場合に機能します/public/css/style.cssが、それでも 404 が返されます。その後、/static/css/style.css物理的に存在するのでリクエストできます。
誰かがこれを修正するための手順を提案できますか? 何か不足していますか?