Node.JS module.exports用于在两个函数之间传递参数?

justZito

我是Node.js的新手,所以这可能是一个基本问题,并且我缺少明显的东西。在下面的代码中,我试图从foo设置sql_file名称,但是由于变量不起作用,我不断收到文件不存在的错误。如果我在sql_util.js中对文件名进行硬编码,则可以正常工作。

那么如何将一个js文件中的参数或任何对象传递给另一个js函数呢?

foo.js

var misc = require('./sql_get');
console.log(misc.sql_file("on.sql"));

sql_util.js

fs = require('fs');
file = 'on.sql'
function sql_file(cb) {
    var fileName = "./SQLs/" + sql_file;
    fs.readFile(fileName, function(err, buffer) {
        if (err) return cb(err);
        return cb(null, buffer.toString());
    });
}
sql_file(function(err, sqlstatement) {
    if (err) throw err;
    console.log('sql statement is: ' + sqlstatement);
});
};
module.exports.x = x;
module.exports.sql_fil = sql_file;
布兰登

让我们逐行进行此过程,因为我看到了很多错误,包括语法和语义上的错误。

foo.js

var misc = require('./sql_get');
console.log(misc.sql_file("on.sql"));

您在下面的函数中将其定义sql_file为异步的,因此它不返回值,而是接受将结果传递到的回调。

sql_util.js

fs = require('fs');
file = 'on.sql'

您有一个未使用的module-global变量file删除它。这会引起混乱。

function sql_file(cb) {
    var fileName = "./SQLs/" + sql_file;

sql_file是一个功能。我知道,因为此代码存在于一个名为的函数中sql_file因此,fileName将是“ ./SQLs/”+.toString()函数结果,函数结果即为函数。我想也许您想要一个参数?

    fs.readFile(fileName, function(err, buffer) {
        if (err) return cb(err);
        return cb(null, buffer.toString());
    });
}

好像还可以

sql_file(function(err, sqlstatement) {
    if (err) throw err;
        console.log('sql statement is: ' + sqlstatement);
    });
};

我不确定您要在这里做什么。为什么调用该函数?

module.exports.x = x;
module.exports.sql_fil = sql_file;

这两条线都有问题。没有定义名为的符号x我很惊讶这段代码运行时没有在该行上引发错误。其次,您要导出sql_filesql_fil,缺少字母e。

解决方案

由于您所询问的只是参数传递,而您只有一个功能,因此让我们简化一下。您永远都不想使用全局变量。如果函数需要特定的变量,只需将其作为参数传递。

foo.js

var misc = require('./sql_get');
misc.sql_file('on.sql', function (err, contents) {
    console.log(contents);
});

sql_get.js(注意文件已重命名)

var fs = require('fs');

function sql_file(sqlFilename, cb) {
    var fileName = "./SQLs/" + sqlFilename;
    fs.readFile(fileName, function(err, buffer) {
        if (err) return cb(err);
        return cb(null, buffer.toString());
    });
}

module.exports.sql_file = sql_file;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

node.js中module.exports =函数的含义

来自分类Dev

将参数传递给node.js中的module.exports

来自分类Dev

node.js中的不同module.exports模式

来自分类Dev

Node.js module.exports不导出整个对象

来自分类Dev

在node.js中异步读取文件module.exports

来自分类Dev

Node.js module.exports更改主体变量

来自分类Dev

导入模块,用于node.js中module.exports的所有方法

来自分类Dev

Node.js:通过module.exports在模块之间共享变量

来自分类Dev

Node.js-WebStorm智能感知两次声明module.exports的影响

来自分类Dev

如何在Node.js中以相同的形式传递两个不同的参数

来自分类Dev

在两个node.js实例之间共享文件

来自分类Dev

node.js variables from a module

来自分类Dev

在Yeoman中使用Node.js的module.exports获得不同的结果

来自分类Dev

如何在Node.js中引用module.exports内部的变量

来自分类Dev

如何使用Azure Functions和node.js在module.exports之外发出axios请求?

来自分类Dev

module.exports 中的 Node.js 我的 var 不够完善

来自分类Dev

如何在 node.js 中正确使用 module.exports?

来自分类Dev

如果没有分配给 module.exports,Node.js 'require()' 会返回什么

来自分类Dev

Node.js / MongoDB:如何使用module.exports将localhost数据库URL传递到server.js文件?

来自分类Dev

node.js中的Package和Module之间有什么区别

来自分类Dev

Node JS - 如何在“module.export”函数中调用方法?

来自分类Dev

在Node module.exports = {}中导出一个类

来自分类Dev

两个node.js服务器之间的文件/数据传输

来自分类Dev

两个node.js应用之间的Socket.io触发事件?

来自分类Dev

在两个Node.js路由之间交换数据的更好方法

来自分类Dev

如何在express.js中的两个javascript文件之间传递参数

来自分类Dev

如何使用require.js在两个JavaScript文件之间传递参数

来自分类Dev

如何使用节点js在两个java类之间将数据作为参数传递

来自分类Dev

node.js crypto module cannot encrypt 16+ characters

Related 相关文章

  1. 1

    node.js中module.exports =函数的含义

  2. 2

    将参数传递给node.js中的module.exports

  3. 3

    node.js中的不同module.exports模式

  4. 4

    Node.js module.exports不导出整个对象

  5. 5

    在node.js中异步读取文件module.exports

  6. 6

    Node.js module.exports更改主体变量

  7. 7

    导入模块,用于node.js中module.exports的所有方法

  8. 8

    Node.js:通过module.exports在模块之间共享变量

  9. 9

    Node.js-WebStorm智能感知两次声明module.exports的影响

  10. 10

    如何在Node.js中以相同的形式传递两个不同的参数

  11. 11

    在两个node.js实例之间共享文件

  12. 12

    node.js variables from a module

  13. 13

    在Yeoman中使用Node.js的module.exports获得不同的结果

  14. 14

    如何在Node.js中引用module.exports内部的变量

  15. 15

    如何使用Azure Functions和node.js在module.exports之外发出axios请求?

  16. 16

    module.exports 中的 Node.js 我的 var 不够完善

  17. 17

    如何在 node.js 中正确使用 module.exports?

  18. 18

    如果没有分配给 module.exports,Node.js 'require()' 会返回什么

  19. 19

    Node.js / MongoDB:如何使用module.exports将localhost数据库URL传递到server.js文件?

  20. 20

    node.js中的Package和Module之间有什么区别

  21. 21

    Node JS - 如何在“module.export”函数中调用方法?

  22. 22

    在Node module.exports = {}中导出一个类

  23. 23

    两个node.js服务器之间的文件/数据传输

  24. 24

    两个node.js应用之间的Socket.io触发事件?

  25. 25

    在两个Node.js路由之间交换数据的更好方法

  26. 26

    如何在express.js中的两个javascript文件之间传递参数

  27. 27

    如何使用require.js在两个JavaScript文件之间传递参数

  28. 28

    如何使用节点js在两个java类之间将数据作为参数传递

  29. 29

    node.js crypto module cannot encrypt 16+ characters

热门标签

归档