私は JavaScriptエラーオブジェクトを表示するにはどうすればよいですか?
https://www.npmjs.com/package/mysql
ここからのNode.jsとExpressのWebアプリケーションフレームワークと mysqlのパッケージを使用していますここに私のParent.jsは、ファイルの...それはvar db = require('../dbconnection');
var Parent = {
findIfParentMobileNumberExists: function (parentmobilenumber, callback) {
db.query('SELECT parentmobilenumber from parents where parentmobilenumber=?', parentmobilenumber, function (err, rows) {
if (err) {
callback(err, null);
}
if (rows.length < 1) {
console.log("rows length less than 1");
callback(err, null);
}
else if (rows.length !== 0) {
console.log("rows length greater than 1");
callback(null, rows[0].parentmobilenumber);
}
else {
}
});
}
module.exports = Parent;
私のモデルファイルだと、ここに私ですregisterParent.jsファイル..これは私のルートです
var express = require('express');
var router = express.Router();
var Parent = require('../models/Parent');
router.post('/', function (req, res, next) {
var countrycode = req.body.countrycode;
var parentmobilenumber = (countrycode) + (req.body.inputMobileNumber);
//remove hyphens from mobile number
var parentmobilenumberwithouthyphens =
parentmobilenumber.replace(/-/g, "");
//remove spaces from mobile number
var parentmobilenumberwithouthyphensandspaces =
parentmobilenumberwithouthyphens.replace(/ /g, '');
Parent.findIfParentMobileNumberExists(parentmobilenumberwithouthyphensandspaces, function (err, parentmobilenumberfromdb) {
if (err) {
res.json({registerErrorMessage: err.message});
}
else {
if (parentmobilenumberwithouthyphensandspaces === parentmobilenumberfromdb) {
console.log(parentmobilenumberfromdb);
}
else {
res.json({registerErrorMessage: 'The Mobile Number does not exist in our database'});
}
}
});
});
正しいmobを入力するとILE番号iはデータベースにない間違った携帯電話番号を入力したときにconsole.logメッセージに表示された携帯電話番号が..しかし、得られたrows.lengthが
iがメッセージ 行の長さ以下取得され得ますこのブロックは、Errオブジェクトが表示されることはありません
if (rows.length < 1) {
console.log("rows length less than 1");
callback(err, null);
}
を実行したときに1 よりも、しかし、私は理解していない...つまり、このブロックはrouter.post機能
if (err){
res.json({registerErrorMessage: err.message});
}
で実行されることはありません3210ので、最初に正しくエラーオブジェクトを表示したいです。 そして、エンドユーザが読むことができるエラーメッセージを表示します。 どうすればいいですか?
私はここ https://github.com/mysqljs/mysql#error-handling
ドキュメントを読んでみましたが、私は本当に適切にコールバックを実行する方法を理解していません。
私はwebstormを使用しています..私はすでにこの文を別のファイルに持っています –
cordeのこの部分に到達していないことを確認するためにres.json({registerErrorMessage:err.message})の隣にconsole.logを挿入しようとしましたか? 到達不能なコードよりもネットワーキングエラーに似ています。 –
データベースレベルのエラーが発生したときにその文が実行されますが、rows.length <1のときにエラーが表示されます。 –