簡體   English   中英

Module.exports函數不返回任何Node.js

[英]Module.exports function returns nothing Node.js

我創建了module.exports函數,

const mongoose = require("mongoose");
const Loan = require("../models/loan_model");

function unpaidList() {
  Loan.aggregate([
    {
      $group: {
        _id: "$ePaidunpaid",
        data: { $push: "$$ROOT" },
        count: { $sum: 1 }
      }
    }
  ]).then(function(data){
    console.log(data) // i am getting data here
    return data;
  })
}

 module.exports = { unpaidList };

這就是我調用該函數的方式。

const unpaidListReq = require("../services/unpaidlist")
router.get("/", ensureAuthenticated,(req, res) => {
     let data = unpaidListReq.unpaidList()
     console.log(data)
      res.render("dashboard", {
        admin: req.user.eUserType,
        user: req.user,
      });
    })

但是作為回報,當合並數據時,它返回undefined 我看了先前問的問題,但仍然明白了。

unpaidList返回Promise

function unpaidList () {
  return Loan.aggregate([
    {
      $group: {
        _id: "$ePaidunpaid",
        data: { $push: "$$ROOT" },
        count: { $sum: 1 }
      }
    }
  ])
}

然后,您可以在處理程序中執行以下操作:

unpaidListReq.unpaidList().then(function (data) {
  res.render("dashboard", {
    admin: req.user.eUserType,
    user: req.user
  })
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM