2016-07-11 7 views
-5

Ich arbeite derzeit mit Nodejs. Wenn ich eine Funktion aus einer anderen Datei aufrufen war zeigen sie die folgende FehlerKann die Eigenschaft 'params' von undefined in nodejs nicht lesen

error: uncaughtException: Cannot read property 'params' of undefined 

Diese Funktion ist, wo ich aus einer anderen Datei

exports.signupconfirm = function(req,res) { 
     var id     = req.params.id; 
     var obj_id  = BSON.ObjectID.createFromHexString(id); 

     logger.log('info','FILE ['+__filename.split('/').pop()+'] : LINE ['+stackTrace.get()[0].getLineNumber()+'] : Signup Confirm ID: '+id); 
     logger.log('info','FILE ['+__filename.split('/').pop()+'] : LINE ['+stackTrace.get()[0].getLineNumber()+'] : Signup Confirm ObjectID: '+obj_id); 
     dbconnection.Ucollection.find({"_id":obj_id}).toArray(function(err,result) { 
       if(err)logger.log('info','FILE ['+__filename.split('/').pop()+'] : LINE ['+stackTrace.get()[0].getLineNumber()+'] : Check the Database Connection details from SIGNUPCONFIRM'); 
       var confirm  = result[0].confirmation; 

}

+0

Veröffentlichen Sie den Code, was Sie versucht haben .. – Subburaj

+1

Wir können Ihnen nicht helfen, ohne den relevanten Code zu sehen. Das ist IMMER der Fall bei Stack Overflow. Wenn Sie eine Frage zu Ihrem Code stellen, müssen Sie die relevanten Teile Ihres Codes anzeigen. Es sollte Ihnen genau sagen, in welcher Zeile Ihres Codes der Fehler liegt. Wir müssen den Code in dieser Zeile und vor dieser Zeile sehen. – jfriend00

+0

Sie wenden wahrscheinlich eine Funktion auf Var an, die Sie nicht definiert haben. Bitte geben Sie Ihren Code ein – Roysh

Antwort

0

req.params immer auf die Variablen verweist genannt in Ihrem Routenpfad

Wenn Sie keinen ID-Parameter übergeben, ist dieser nicht definiert (wie in Ihrem Fall).

Wie @ chenkehxx hier erwähnt, müssen Sie die ID über die Route übergeben. Angenommen, es ist /api/signup/:id als /api/signup/1 wird die ID von 1 holen und dann req.params wird 1 zurückgegeben und nicht undefiniert.

+0

ja Stimmt, Danke für Ihre Information – SuperKrish

Verwandte Themen