Sequelize как функция в экспресс-JS всегда возвращает isFulfilled и isRejected false - PullRequest
0 голосов
/ 27 августа 2018

у меня есть такой помощник

let connection     = require('./connection');
const Sequelize    = require('sequelize');
const sysUserModel = require("./models/sys_user");
const Sys_user     = sysUserModel(connection, Sequelize);
let queryUtils     = {
    getOldPassw: function (SYSUSER_ID) {
         return Sys_user.findOne(
             {
                 attributes: ['SYSUSER_PASSW'],
                 where     : {
                     SYSUSER_ID: SYSUSER_ID
                 }
             }
         ).then(function (row) {
            return row.dataValues.SYSUSER_PASSW;
    });
    }

};
exports.data       = queryUtils;

А это мой контроллер

let queryUtils     = require('../queryUtils');
let changePassword = function (req, res) {
    let oldPass       = queryUtils.data.getOldPassw('1010001');
    return res.send(oldPass);
};
module.exports = {
    changePassword
};

Когда я запускаю свой код, появляется, как показано ниже errorRestClient

А это моя консоль Консоль

Хотите помочь мне разобраться с этим делом? Большое спасибо

1 Ответ

0 голосов
/ 27 августа 2018

Вы возвращаете обещание из вашей функции getOldPassw, поэтому вам нужно поработать над этим. В настоящее время вы отправляете обещание клиенту, а не значение, которое обещание разрешает в .

let changePassword = function (req, res) {
    queryUtils.data.getOldPassw('1010001')
        .then(oldPass => res.send(oldPass))
        .catch(err => {
            // Always good to handle errors!
            console.error(err);
            res.sendStatus(500);
        });
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...