[英]node.js, express.js, and mysql - Cannot read property 'status' of undefined
[英]Cannot read property 'status' of undefined in Express js
這是我的代碼:
const db = require('../models');
const findAllUsers = async (req, res) => {
try {
const users = await db.User.findAll();
return res.status(200).json({
users,
});
} catch (error) {
return res.status(500).json({error: error.message})
}
}
module.exports = {
findAllUsers,
}
執行此操作時收到錯誤消息“TypeError:無法讀取未定義的屬性‘狀態’”
正在使用,表達 js 和 sequelize 來執行操作!
這是我的路線
router.get('/users', (req, res) => {
//const a = controller.allUsers;
res.send(controller.findAllUsers());
});
類型錯誤:無法讀取未定義的屬性“狀態”
你在訪問status
上可能是不確定的?
res.status
那么什么是res
以及為什么可能未定義?
const findAllUsers = async (req, res) => {
res
是您傳遞給findAllUsers
的第二個參數
controller.findAllUsers()
...你不傳遞任何參數來findAllUsers
所以他們都將是不確定的。
您需要將值傳遞給您使用的參數!
在旁邊:
res.send(controller.findAllUsers());
您正在獲取findAllUsers
的返回值並將其發送到響應中……但您已經嘗試在該函數內發送響應。 您不能多次響應同一個請求。
為什么不嘗試將req
和res
作為輸入參數傳遞給findAllUsers
方法?
router.get('/users', (req, res) => {
controller.findAllUsers(req, res);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.