Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 无法读取节点JS中未定义的属性“params”_Node.js - Fatal编程技术网

Node.js 无法读取节点JS中未定义的属性“params”

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

我目前正在与Nodejs合作。当我从另一个文件调用函数时,它显示以下错误

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”的参数。检查它为什么未定义