2015-10-15 38 views
0

我能夠在我的系統中運行以下代碼,但在重新啓動後,它顯示Mongo未定義。 我將整個node_modules文件夾複製到新文件夾中,但沒有任何幫助,可能是它在緩存中,現在它丟失了,因爲我也清理了緩存。Mongo庫()in nodejs

mongo = new Mongo("localhost"); 
keywordsDb = mongo.getDB("database"); 
keywordsColl = keywordsDb.getCollection("keywords"); 

日誌低於:

(function (exports, require, module, __filename, __dirname) { mongo = new Mongo(
"localhost"); 
                     ^

ReferenceError: Mongo is not defined 
    at Object.<anonymous> (D:\js\restful\query.js:1:75) 
    at Module._compile (module.js:434:26) 
    at Object.Module._extensions..js (module.js:452:10) 
    at Module.load (module.js:355:32) 
    at Function.Module._load (module.js:310:12) 
    at Function.Module.runMain (module.js:475:10) 
    at startup (node.js:118:18) 
    at node.js:952:3 

回答

2

嘗試將當前目錄切換到應用程序的根目錄並運行以下命令「故宮安裝」,並檢查是否有錯誤消息。

此外,你應該使用這個語法來連接你的Node.js應用的MongoDB:

var MongoClient = require('mongodb').MongoClient; 
var keywordsDb; 
var keywordsColl; 

MongoClient.connect('mongodb://localhost:27017/database', function(err, database) { 
    if (err) throw err; 
    keywordsDb = database; 
    keywordsColl = keywordsDb.getCollection("keywords"); 
}); 
+0

我做到了,但問題是我沒有的package.json提到我的依賴,當我正在研究它嘗試了太多的東西,我不記得我是如何運行的。我剛剛開始使用MongoDb和node.js,昨天我甚至沒有任何關於package.json的想法 –

+0

在node_modules目錄中,檢查在其中找到的子目錄的名稱。它是你已經安裝的軟件包的名稱。 試着用「npm packagename --save」重新安裝軟件包,它會更新你的package.json文件 –

+0

謝謝它現在可以工作。 –