函数返回未定义而不是数字

时间:2018-12-17 14:35:35

标签: javascript node.js express mongoose mongoose-populate

我在js中有一个基本上可以计算账单的函数。这是代码:-

let bill = () => {
Customer
    .findOne({stb_no: "34BDFA64E31F"})
    .then(result => {
        Plan.findById(result.plan).populate('channel_list').exec(function(err, ch) {
            if(err){
                console.log(err);
            } else {
                let bill = 0;
                for(let rates of ch.channel_list)
                {
                    bill = bill + parseInt(rates.rate);
                }
                return bill + 130;
            }
        });
    })
    .catch(err => {
        console.log(err);
    });
}

该函数仅在从数据库中获取数据后才计算账单,并且应该返回一个整数,但返回的是未定义的。 请帮助

注意:-Plan和Customer是猫鼬模型。

1 个答案:

答案 0 :(得分:0)

您什么都不会退货。如果要从调用它的地方处理结果,则必须返回如下结果:

return bill + 130