У меня есть программа в nodejs & mysql, как показано ниже
db.query()
.then(1)
.then(2)
.then(3)
.catch()
Я проверяю значение из базы данных в then(1)
и пытаюсь вернуть оттуда ответ. В then(2)
я выполняю другой код, который использует некоторые данные из результата then(1)
и т. Д.
Моя проблема: При возврате ответа от then(1)
, catch()
вызывает (потому что then(2)
имеет ошибку, не получая данные от then(1)
). Так есть ли способ остановить дальнейшее выполнение в then(1)
, чтобы then(2)
и catch()
не могли вызвать?
db.query('query......', [val1, val2])
.then(rslt => { return res.json({ mssg: "Email already exists!", error: "Email already exists!" }) })
.then(user => { return db.query('INSERT INTO ', value, (err, res, flds) => { err ? reject(err) : resolve(res) }) })
.then(user => { return res.json({ mssg: "Success", success: true}) })
.catch( (err) => { console.log(err) })