2015-12-08 48 views
0

我是nodejs的新手。我遇到了这个错误,现在我无法启动我的npm。请让我知道如何重新启动NPM,以及如何从遇到此问题,以防止节点js错误。任何专家?

错误如下:

{ [Error: Cannot find module '../build/Release/bson'] code: 'MODULE_NOT_FOUND' } 

js-bson: Failed to load c++ bson extension, using pure JS version 
C:\Users\sriramr\nodetest1\routes\index.js:129 
collection.find({},{}function(e,docs){ 
        ^^^^^^^^ 
SyntaxError: Unexpected token function 
at exports.runInThisContext (vm.js:73:16) 
at Module._compile (module.js:443:25) 
at Object.Module._extensions..js (module.js:478:10) 
at Module.load (module.js:355:32) 
at Function.Module._load (module.js:310:12) 
at Module.require (module.js:365:17) 
at require (module.js:384:17) 
at Object.<anonymous> (C:\Users\sriramr\nodetest1\app.js:11:14) 
at Module._compile (module.js:460:26) 
at Object.Module._extensions..js (module.js:478:10) 

npm ERR! Windows_NT 6.1.7601 
npm ERR! argv "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program  Files\\nodejs 
\\node_modules\\npm\\bin\\npm-cli.js" "start" 
npm ERR! node v0.12.0 
npm ERR! npm v2.5.1 
npm ERR! code ELIFECYCLE 
npm ERR! [email protected] start: `node ./bin/www` 
npm ERR! Exit status 1 
npm ERR! 
npm ERR! Failed at the [email protected] start script 'node ./bin/www'. 
npm ERR! This is most likely a problem with the nodetest1 package, 
npm ERR! not with npm itself. 
npm ERR! Tell the author that this fails on your system: 
npm ERR!  node ./bin/www 
npm ERR! You can get their info via: 
npm ERR!  npm owner ls nodetest1 
npm ERR! There is likely additional logging output above. 

npm ERR! Please include the following file with any support request: 
npm ERR!  C:\Users\sriramr\nodetest1\data\npm-debug.log 

源代码:: INDEX.JS

var express = require('express'); 
var router = express.Router(); 

router.get('/', function(req, res, next) { 

res.render ('index',{title:'欢迎来到会议室演示。')}; });

router.get('/userlist', function(req, res) { 
var db = req.db; 
var collection = db.get('usercollection'); 
collection.find({},{},function(e,docs){ 
    res.render('userlist', { 
     "userlist" : docs 
    }); 
}); 
}); 


router.get('/newuser',function(req,res){ 
res.render('newuser',{title:'Add new user'}); 
}); 
router.get('/newuser',function(req,res){ 
res.render('newroom',{title:'Add new room'}); 
}); 


router.post('/adduser', function(req, res) { 


var db = req.db; 


var userName = req.body.username; 
var userEmail = req.body.useremail; 


var collection = db.get('usercollection'); 


collection.insert({ 
    "username" : userName, 
    "email" : userEmail 
}, function (err, doc) { 
    if (err) { 

     res.send("There was a problem adding the information to the  database."); 
    } 
    else { 

    res.redirect("userlist"); 
    } 
}); 
}); 
/*---------adding room number and room list -------*/ 
router.post('/addroom', function(req, res) { 

var db = req.db; 
var roomname = req.body.roomname; 
var collection = db.get('roomlist'); 
collection.insert({ 
    "roomname" : roomname 

}, function (err, doc) { 
    if (err) { 
     res.send("There was a problem adding the information to the database."); 
    } 
    else { 
     res.redirect("roomlist"); 
    } 
}); 
}); 
/*----------room end list ------------------*/ 
/*--------addingtime list ----------*/ 
router.post('/addtime', function(req, res) { 
var db = req.db; 
var starttime = req.body.strt_time; 
var endtime = req.body.end_time; 
var emailid = req.body.empemail; 
var collection = db.get('timelist'); 
collection.insert({ 
    "starttime" : starttime, 
    "endtime" : endtime, 
    "emailid": emailid 

}, function (err, doc) { 
    if (err) { 
     res.send("There was a problem adding the information to the  database."); 
    } 
    else { 
     res.redirect("addtime"); 
    } 
}); 

    var collection = db.get('roomlist'); 
collection.find({},{},function(e,docs){ 
    res.render('roomlist', { 
     "roomname" : roomname 
    }); 
}); 

}); 
/*---------removing time list --------*/ 
/*----removing room number and roomlist -----------*/ 
router.post('/removeroom', function(req, res) { 

    var db = req.db; 
    var roomname = req.body.remove_room; 
    var collection = db.get('roomlist'); 
    collection.remove({ 
     "roomname" : roomname 

    }, function (err, doc) { 
     if (err) { 
      res.send("There was a problem adding the information to the  database."); 
     } 
     else { 
      res.redirect("roomlist"); 
     } 
    }); 
}); 




router.get('/roomlist', function(req, res) { 
var db = req.db; 
var collection = db.get('roomlist'); 
collection.find({},{}function(e,docs){ 
    res.render('roomname', { 
     "roomname" : docs 
    }); 
    }); 
}); 

/*----------end room number and room list ---------*/ 
/*--end db connection for user ---*/ 
module.exports = router; 
+0

你的代码似乎有语法错误,发布index.js的代码 – Marged

+0

@marged:DOne。请看看 –

回答

2

我不'认为这是一个Node.js问题,只是Javascript。

,这似乎打破这一切被报告为代码:

collection.find({},{}function(e,docs){ 
        ^^^^^^^^ 

基本上,你不许后立即提供功能“{}”。如果这是要在列表中你的“收藏”对象的“查找”方法调用的参数,你应该在前面加上一个逗号,就这么简单:

collection.find({},{},function(e,docs){ 

固定版本(你index.js文件的底部):

router.get('/roomlist', function(req, res) { 
    var db = req.db; 
    var collection = db.get('roomlist'); 
    collection.find({},{},function(e,docs){ // your error fixed!!! 
    res.render('roomname', { 
     "roomname" : docs 
    }); 
    }); 
}); 

/*----------end room number and room list ---------*/ 
/*--end db connection for user ---*/ 
module.exports = router; 
+0

我建议你使用 - 作为一个新手 - 一个Javascript语法高亮编辑器(你有没有试过Atom https://atom.io/):它不会为你修复错误,但有助于发现它们。 –

+0

感谢您的建议 –

+0

不客气。不要忘了标记为“答案”,即回答您的问题的答案(点击答案左侧的绿色“V”):它可以帮助人们了解哪些答案是问题的正确答案(以及奖励有些人回答了一些问题)。 :) –