スタイラスミドルウェアをセットアップしようとしていますが、成功しません。このドキュメントは、初心者やNodejsを初めて使用する人には適していません。私が推測したのは、スタイラスミドルウェアを使用する小さなミニノードアプリを作成する必要があるということでした。ただし、そのページに設定された単純なものを使用しても、これを機能させることはできませんでした。これが私がしたことです:
もちろん、スタイラスだけでなくノードもインストールしています。次に、ファイルstylus-middleware.appを作成しました。これまでに、次のコードを追加しました(ドキュメントの最も単純な例に基づいています)。
var app = connect();
app.middleware(__dirname);
シンプルなアプリを実行しようとすると、次のエラーが発生します。
Tue Feb 19:~/Sites/test $ node stylus.app
/Library/WebServer/Documents/test/stylus.app:1
ction (exports, require, module, __filename, __dirname) { var app = connect();
^
ReferenceError: connect is not defined
at Object.<anonymous> (/Library/WebServer/Documents/test/stylus.app:1:73)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.runMain (module.js:492:10)
at process.startup.processNextTick.process._tickCallback (node.js:244:9)
Web検索を行ったところ、connect()がnodejsの接続プラグインに関連する関数であることがわかったので、インストールしようとしましたが、発生したエラーは同じでした。だから私は困惑しています...ここで何が起こっているのかを知るには、nodejsがどのように機能するかについてはまだ十分にわかりません。
アドバイスをいただければ幸いです。
アップデート
少しいじった後、スタイラスミドルウェアをセットアップして接続サーバーにリンクする方法を理解しました。しかし、私のコードはまだ機能していません。エラーは発生しませんが、スタイラスはアプリのディレクトリ(つまり、__ dirname)にある.stylファイルをコンパイルしていません。現在のアプリコードは次のとおりです。
function compile(str, path) {
return stylus(str)
.import(__dirname)
.set('filename', path)
.set('warn', true)
.set('compress', true);
}
var stylus = require('stylus');
var connect = require('connect');
var app = connect();
app.use(stylus.middleware({
src: __dirname,
dest: __dirname,
compile: compile
}));
app.use(connect.static(__dirname));
var server = require('http').createServer(app).listen(8000);
console.log('Watching .styl files in directory: '+__dirname);
誰かがここで欠けているものやいくつかの提案を持っているアイデアを持っているなら、私はいくつかのアイデアを聞いてみたいです...