#mysql #node.js
#mysql #node.js
Вопрос:
почему он не получает результат? SQL-запрос прост и корректен и работает в mysql
const getDateBw = (InvoiceDate1, InvoiceDate2, err, req, res) => {
let startDate = new Date(InvoiceDate1);
let endDate = new Date(InvoiceDate2);
let formattedDate1 = JSON.stringify(dateFormat(startDate, "yyyy-mm-dd"));
let formattedDate2 = JSON.stringify(dateFormat(endDate, "yyyy-mm-dd"));
console.log(formattedDate1);
db.query(
"SELECT * FROM dashboard WHERE Invoice_Date BETWEEN "
formattedDate1
" "
"AND "
formattedDate2
).then(function (myTableRows) {
res.json({
myTableRows,
});
});
};
getDateBw("2009-05-21", "2021-01-01");
{"level":50,
"time":1598543997608,
"pid":10772,
"hostname":"Ghadi-Mdallal",
"stack":"TypeError: Cannot read property 'json' of undefinedn at C:\Users\LENOVO\Desktop\Dashboard-V1\empServer\handlers\user.controllers\user.controllers.js:29:9n at processTicksAndRejections (internal/process/task_queues.js:97:5)",
"type":"Error",
"msg":"Cannot read property 'json' of undefined"
}
Комментарии:
1. ваш вызов функции getDateBw имеет только два параметра, в то время как при определении вы также используете err,res. Вам не кажется, что там чего-то не хватает?
2. пожалуйста, проверьте значение res, утешив его, потому что, как это выглядит, значение res не определено (и ошибки говорят о том, что вы пытаетесь получить доступ к свойству json из неопределенного значения)
3. @VipulPatil тогда что мне передать, если значение res не определено? я зарегистрировал его, и оно было неопределенным
4. @AliAsgherBadshah да, оно не определено, что я должен сделать, чтобы оно было определено?
5. @ghadiMdallal req и res — это параметры, используемые экспресс-маршрутизатором, поэтому сначала посетите эту часть из онлайн-руководства, например, var router = express. Router(); // получить экземпляр экспресс-маршрутизатора router.get(‘/’, function(req, res) { // вызовите свою функцию запроса здесь res.json({ сообщение: ‘ура! добро пожаловать в наш api!’ }); });
Ответ №1:
Вы не передаете «res» в getDateBw («2009-05-21», «2021-01-01»);
Как res.json будет работать внутри? Это выдаст ошибку «Не удается прочитать свойство ‘json’ неопределенного значения».
Комментарии:
1. значение res не определено, если вы его не передаете.
2. Я отправил res как параметр, но все еще не определен
3. Я отправил res как параметр, но все еще не определен
4. Внутри какой функции вы вызываете getDateBw ? Вам нужно передать «res», который выражает или Node.js или любой другой FW дает вам. Это «res» имеет . json в нем. Просто передача любого «res» не сработает.