node.js環境では、毎回生成するのではなく、によって提供されるディレクトリにファイルを書き込みたいと考えてstylusいます。.css.cssnginx
名前のバージョン管理部分、たとえば、client-<unixTime>.cssはnginx幸せになり、ページキャッシュは正しく機能するようです。
これを支援するために利用できる既存のツールはありますか?
stylusそれが1回限りまたは悪魔として実行できる実行可能ファイルでもあることに気づいていませんでした。いずれの場合も、.stylファイルを.cssに変換し、選択したディレクトリに配置します。
でnode.js、実行可能ファイルを取得します
sudo npm install stylus -g
私にとって、stylusこの方法を使用することは、の方法の柔軟性がないため、非常に好まれstylus middlewareます。実行可能ファイルを使用して、それに対処するのではなく。これにより、開発サーバーと本番nodeサーバーの連携も緊密に保たれますが、バージョン管理の問題は解決されません。
これが1つのファイルをコンパイルする私の関数です(同期):
var stylus = require('stylus')、
nib = require('nib');
//スタイラスをコンパイルします
exports.css = function(fn、out){
var buf = fs.readFileSync(fn、'utf8');
var oldCode =(fs.existsSync(out))?fs.readFileSync(out、'utf8'):'none';
スタイラス(buf)
.set('ファイル名'、fn)
.use(nib())
.render(function(err、newCode){
if(err)throw('スタイラスerr:' + err);
if(oldCode!= newCode){
console.log('スタイラス:作成' + out);
fs.writeFileSync(out、newCode、'utf8');
}
});
};
(コンパイル後、 (sync)を使用して非現在のgzファイルを使用してgzipを使用しますcompress-buffer