module.exports包含一行中的所有功能
这是在Node.js中的后续问题,我如何从其他文件中“包含”函数?
我想包含一个包含node.js应用程序的常用函数的外部js文件。
从In Node.js中的答案之一,我如何从我的其他文件中“包含”函数?这可以通过
// tools.js
// ========
module.exports = {
foo: function () {
// whatever
},
bar: function () {
// whatever
}
};
var zemba = function () {
}
导出每个功能都很不方便。 是否可以有一个出口所有功能的单线程? 看起来像这样的东西;
module.exports = 'all functions';
这样更方便。 如果稍后忘记导出某些功能,那么它也没有多少问题。
如果不是一句话,是否有更简单的替代方案,使编码更方便? 我只想包含一个由普通函数组成的外部js文件。 就像在C / C ++中include <stdio.h>
一样。
你可以先写所有的函数声明,然后将它们导出到一个对象中:
function bar() {
//bar
}
function foo() {
//foo
}
module.exports = {
foo: foo,
bar: bar
};
虽然没有神奇的单线,但你需要明确地导出你想要公开的功能。
我做了如下的事情:
var Exported = {
someFunction: function() { },
anotherFunction: function() { },
}
module.exports = Exported;
我需要在另一个文件中,我可以访问这些功能
var Export = require('path/to/Exported');
Export.someFunction();
这实质上只是一个包含函数的对象,然后导出该对象。
值得注意的是,在ES6中,您现在可以导出这样的函数:
export function foo(){}
export function bar(){}
function zemba(){}
简单的写export
要导出的功能之前。 更多信息在这里。
上一篇: module.exports that include all functions in a single line
下一篇: How to split a single Node.js file into separate modules