2017-05-30 68 views
0

我試圖使用Mongoose連接到MongoDB。但它既不會拋出錯誤也不會連接到數據庫。以下是我的代碼。mongoose.connect在連接到mongodb後不調用回調

const express = require('express'); 
const app = express(); 
const port = process.env.PORT || 8080; 
const mongoose = require('mongoose'); 

console.log('Hi, there!!');  

mongoose.connect('mongodb://localhost:27017/db_name', (err) => { 
console.log('Callback called'); 
if(err) throw err; 
console.log('Connected to database'); 
}) 

在上面的代碼沒有的console.log的回調內確實發生了。但mongoose.connect以外的任何地方做的工作就像的console.log( '嗨,那裏!')

版本使用

express: 4.0.0 
mongoose: 3.8.40 
node: 7.7.3 
mongodb: 3.4.0 
+0

此代碼的工作我的機器上完全沒有問題。引發錯誤或連接到數據庫。我想它可能是版本相關的。也許如果你添加什麼版本的節點和貓鼬你正在使用某人可以發現一些東西 –

+0

我已經添加了該帖子的版本 –

回答

0

使用mongoose: 3.8.40我在控制檯得到這個:

{ Error: Cannot find module '../build/Release/bson' 
    at Function.Module._resolveFilename (module.js:470:15) 
    at Function.Module._load (module.js:418:25) 
    at Module.require (module.js:498:17) 
    at require (internal/module.js:20:19) 
    at Object.<anonymous> (/Users/kevin/nemeacreation/sites/test/stackoverflow/node_modules/bson/ext/index.js:15:10) 
    at Module._compile (module.js:571:32) 
    at Object.Module._extensions..js (module.js:580:10) 
    at Module.load (module.js:488:32) 
    at tryModuleLoad (module.js:447:12) 
    at Function.Module._load (module.js:439:3) code: 'MODULE_NOT_FOUND' } 
js-bson: Failed to load c++ bson extension, using pure JS version 
Hi, there!! 

升級到"mongoose": "~4.4"爲我修好了。我得到的答案在這裏:https://stackoverflow.com/a/35516644/2829540

對於信息的mongoose最新版本是4.10.4

+0

這也適用於我的一些其他更新。謝謝 –

相關問題