Node.js 无法读取节点JS中未定义的属性“params”
我目前正在与Nodejs合作。当我从另一个文件调用函数时,它显示以下错误Node.js 无法读取节点JS中未定义的属性“params”,node.js,Node.js,我目前正在与Nodejs合作。当我从另一个文件调用函数时,它显示以下错误 error: uncaughtException: Cannot read property 'params' of undefined 这是我从另一个文件调用的函数 exports.signupconfirm = function(req,res) { var id = req.params.id; var obj_id = BSON.Obje
error: uncaughtException: Cannot read property 'params' of undefined
这是我从另一个文件调用的函数
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;
}req.params始终引用路由路径中的变量
如果您不传递任何id参数,它将像您的情况一样未定义
就像这里提到的@chenkehxx,你需要通过路线传递id。
假设它是/api/signup/:id,那么/api/signup/1将获取1的id,然后req.params将返回1,而不是未定义的。我不太确定您的项目,但您可以通过如下对象指针以不同的方式传递它:
exports.ObjectName = ObjectName;
应修复错误。将您尝试过的代码张贴出来。如果不查看相关代码,我们将无法为您提供帮助。在这里,堆栈溢出几乎总是这样。如果您要询问有关代码的问题,必须显示代码的相关部分。它应该准确地告诉您错误所在的代码行。我们需要在那一行和那一行之前查看代码。您可能会将一个函数应用于尚未定义的var。请张贴您的代码请提供您的代码!否则,我们将无法帮助您,因为此错误可能会因不同的原因引发。请查找带有“params”的行。应用作“someObject”。未定义“someObject”的参数。检查它为什么未定义