NodeJS表达了模块

时间:2015-11-10 17:36:49

标签: node.js express

我是node.js的新手,我可能安装错了,一旦我安装它工作得很好,但是现在,经过一段时间我再也无法启动节点服务器了。

当我尝试“node debug server.js”时 我懂了 错误:没有这样的原生模块表达

这是我的代码:

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

app.get('/', function (req, res) {
  res.sendFile(__dirname + '/index.html');

});

app.get('/wheel', function (req, res) {
  res.sendFile(__dirname + '/wheel.html');
});

io.on('connection', function(socket){
  socket.on('subscription', function(msg){
    console.log('subscription: ' + msg);
    io.emit('subscription', msg);
  });
});

http.listen(3000, function(){
  console.log('listening on *:3000');
});

调试:

break in server.js:1
  1 var app = require('express')();
  2 var http = require('http').Server(app);
  3 var io = require('socket.io')(http);
debug> var app = require('express')();
Error: No such native module express

我用--save和-g参数安装了express,所以这里是版本

~/sandbox/dpr# express -V
4.13.1

任何人都可以告诉我我的服务器有什么问题。 谢谢。

已更新

这是完整的调试输出

debug> var app = require('express')();
Error: No such native module express
    at NativeModule.require (node.js:854:13)
    at repl:1:11
    at Interface.controlEval (_debugger.js:969:21)
    at repl.js:249:20
    at Interface.controlEval (_debugger.js:981:5)
    at Interface.<anonymous> (repl.js:239:12)
    at Interface.EventEmitter.emit (events.js:95:17)
    at Interface._onLine (readline.js:202:10)
    at Interface._line (readline.js:531:8)
    at Interface._ttyWrite (readline.js:760:14)
debug>

1 个答案:

答案 0 :(得分:0)

确保您的server.js文件位于node_modules旁边的主目录中:'

app_directory
├──server.js
├──_node_modules
   ├──express