【发布时间】:2020-12-05 11:41:01
【问题描述】:
我的用户路由器文件
const express = require('express');
const { protect, authorize } = require('../middleware/auth');
const {
createUser,
getallUsers,
} = require('../controllers/users');
const User = require('../models/User');
const router = express.Router({ mergeParams: true });
router.route('/')
. get(authorize('admin').getallUsers)
. post(createUser);
module.exports = router;
方法 getallUsers
exports.getallUsers = asyncHandler(async (req, res, next) => {
const all = await User.find();
if (!User) {
return next(
new ErrorResponse('Something got wrong with users collection', 500),
);
}
res.status(200).json({ success: true, data: all });
});
在我添加 getallUSers 之前工作正常。现在终端显示
/home/milenko/blog_mongo/backend/node_modules/express/lib/router/route.js:202
throw new Error(msg);
^
Error: Route.get() requires a callback function but got a [object Undefined]
VSCode 展示
router.route('/')
^
ReferenceError: router is not defined
at Object.<anonymous> (/home/milenko/blog_mongo/backend/routes/tempCodeRunnerFile.js:1:1)
它是怎么来的?我在第 13 行 router.route 设置了一个断点。
【问题讨论】:
标签: node.js debugging visual-studio-code