Проблема в возвращаемом значении в Nodejs - PullRequest
0 голосов
/ 07 февраля 2020

У меня возникла проблема при возврате значения.

Это моя функция, откуда я возвращаю значение:

async function createOrderId(bizId) {
    const CustomerOrderModel = require('../models/CustomerOrder');
    try {
        var biz_id = bizId;
        var year = new Date().getFullYear();
        var total = 0;
        total = await CustomerOrderModel.countDocuments({bizId:bizId}).exec();
        var w_order_id = biz_id + 'OD' + year + (total+1);
        return w_order_id;
    } catch (e){
        console.log(e);
    }
}

И в каком-то другом API я вызвал эту функцию и хочу этот w_order_id. но я не получаю значение.

Примечание: Когда я вызываю эту функцию, я также пытался использовать asyn c и жду решения этой проблемы. Но все равно не получаю значение.

Пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 07 февраля 2020

Попробуйте, используя Promise

return new Promise((resolve, reject)=>{
        var biz_id = bizId;
        var year = new Date().getFullYear();
        var total = 0;
        total = await CustomerOrderModel.countDocuments({bizId:bizId}).exec((err, result)=>{
            if(err){
              reject(err)
            } else {
           var w_order_id = biz_id + 'OD' + year + (total+1);
           resolve(w_order_id);
        }

    });

})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...