この質問のように、nowjsをexpress 3.0で動作させようとしています。コードに従っていますが、「現在は定義されていません」というメッセージが表示されます。
Oracle VM 仮想ボックスで Ubuntu 12.04 を実行しています。
最初に Express アプリを作成します。
$ express myBrilliantNewApp
次に、新しいディレクトリに nowjs をインストールします。
$ sudo npm install now
サーバー変数を追加して、今すぐ使用します。
var server = http.createServer(app).listen(app.get('port'), function() {
console.log('Express server listening on port ' + app.get('port'));
})
var everyone = require('now').initialize(server);
そしたら、これができるはず…
everyone.now.writesomething = function() {
console.log('I would really like it if this shows up at the console')
};
...そして電話をかけ、みんなが何について話しているかを確認します。
now.writesomething();
console.log(everyone);
それは動作しません。私は得る:
[ReferenceError: now is not defined]
ReferenceError: now is not defined
at Object.<anonymous> (/home/jan/dev/apps/probeer1/app.js:44:1)
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)
ここで私が間違っていることを誰かに教えてもらえますか?
全リスト app.js
/**
* Module dependencies.
*/
var express = require('express')
, routes = require('./routes')
, http = require('http')
, path = require('path');
var app = express();
app.configure(function(){
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
});
app.configure('development', function(){
app.use(express.errorHandler());
});
app.get('/', routes.index);
var server = http.createServer(app).listen(app.get('port'), function() {
console.log('Express server listening on port ' + app.get('port'));
})
var everyone = require('now').initialize(server);
everyone.now.writesomething = function() {
console.log('I would really like it if this shows up at the console')
};
now.writesomething();
console.log(everyone);