首页 > 解决方案 > 为什么这不是一个函数?

问题描述

我有一个名为的文件offer.js(它可以很好地输出数据);

function rsOffersAll() {
    global.MSSQL_MYDB.connect().then(function(error, result) {
        global.MSSQL_MYDB.request(global.MSSQL_MYDB).query('SELECT Top(10) * FROM [Broadcast].[Offer]').then(function (result) {
            console.dir(result);
            return result;
        });
    });
}

module.exports.rsOffersAll = rsOffersAll();

在我的路由器文件中,我有这个:

const Offer = require('../models/offer');
Offer.rsOffersAll();

如果我运行上面我得到这个错误:

Offer.rsOffersAll();
      ^

TypeError: Offer.rsOffersAll is not a function

为什么不是函数?以及如何执行该功能以便将数据放入另一个文件?

标签: javascriptnode.js

解决方案


rsOffersAll()rsOffersAll计算为调用函数时获得的返回值。

该函数没有return语句,因此它返回undefined.

undefined不是函数。

如果要导出函数,请不要在尝试导出的行上调用它。

module.exports.rsOffersAll = rsOffersAll;

推荐阅读