Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/13.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
Javascript TypeError:无法读取属性';名称';node.js中未定义的_Javascript_Node.js - Fatal编程技术网

Javascript TypeError:无法读取属性';名称';node.js中未定义的

Javascript TypeError:无法读取属性';名称';node.js中未定义的,javascript,node.js,Javascript,Node.js,您的循环中有几个问题: D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:132 throw err; ^ TypeError: Cannot read property 'name' of undefined at getPaths (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\route

您的循环中有几个问题:

D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:132
  throw err;
  ^

TypeError: Cannot read property 'name' of undefined
at getPaths (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\routes.js:124:54)
at D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\routes.js:24:4
at D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\routes.js:112:3
at result (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:414:17)
at executeCallback (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:406:9)
at handleCallback (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:128:55)
at cursor.close (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\operations\cursor_ops.js:218:62)
at handleCallback (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:128:55)
at completeClose (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\cursor.js:887:14)
at _endSession (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\cursor.js:898:37)

你确定不想比较它们吗?因为现在,您正在设置category.id并在函数中返回它。因此,如果
pathIds[i]
等于0,则提供给
find
的函数将返回false,否则返回true。这真的是你想要的吗

您有一个循环,只打印
currentCategory
的第一个值。它是在循环中修改的,所以将console.log移动到那里以查看betterI see now-第一个循环是可以的,但是在该循环之后,代码执行会变得异步。有没有一种方法可以在接下来的循环中重用currentCategory对象?您能提供更多的代码吗?与使用PathID数组和subCategory对象调用getPaths函数类似,始终存在与条件匹配的元素。这应该不是问题。如果一个类别没有任何子类别怎么办?在这种情况下,find将返回undefined,您将在下一次循环迭代中得到错误。我修复了它。谢谢!!:)循环出现问题,导致未定义的值。
D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:132
  throw err;
  ^

TypeError: Cannot read property 'name' of undefined
at getPaths (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\routes.js:124:54)
at D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\routes.js:24:4
at D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\routes.js:112:3
at result (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:414:17)
at executeCallback (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:406:9)
at handleCallback (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:128:55)
at cursor.close (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\operations\cursor_ops.js:218:62)
at handleCallback (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\utils.js:128:55)
at completeClose (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\cursor.js:887:14)
at _endSession (D:\repos\onlineStore\borrislava-onlinestore\Backup\Work\node_modules\mongodb\lib\cursor.js:898:37)
for (i=0; i<pathIds.length; i++) {
    pathDirs += pathIds[i];
    paths[i] = {dir : pathDirs, name : currentCategory.name};
    currentCategory = currentCategory.categories.find(function(category){
        return category.id = pathIds[i];
    });
}
return category.id = pathIds[i]