2014-02-09 24 views
0

我想傳遞一個變量申請到Mongo的查詢是這樣的:範圍似乎沒有在MongoClient.connect

function retrieveDocNumber(docNumber) { 
    MongoClient.connect('mongodb://' + this.mongoUrl + "/" + this.mongoDbName, function(error, db) { 
     var lessonCollection = db.collection('lessons'); 

     if (error) { 
      console.log(error); 
     } else { 
      console.log(docNumber) // Is undefined... 
      lessonCollection.findOne({number: docNumber}, function(error, doc) { 
       console.log(error); 
       console.log(doc); 
      }); 
     } 
    }); 

所以我不能完全肯定這是怎麼回事,但docNumber(和任何其他的變量都不會在連接函數中包含範圍)在連接函數中是未定義的。任何解決方法或明顯的地方,這是錯誤的?我需要使用用戶定義的docNumber從數據庫中檢索文檔。

+1

它不看的docNumber在retrieveDocNumber函數的任何位置進行操作。所以顯而易見的是檢查函數調用。 –

回答

0

唉,愚蠢的問題,得到的答覆是,因爲docNumber被錯誤地解析爲一個字符串,而不是一個int ...