我正在学习node.js,我想通过这种方式将我的服务器文件拆分成不同的文件,以便更好地维护。
问题是,我已经看过所有这些旧方法将文件拆分成几个文件。 例如:How to split monolithic node.js javascript
Divide Node App in different files
How to split a single Node.js file into separate modules
How to split Node.js files in several files
但所有这些方法都不再适用,它们已经过时了。现在我想找到一种方法,我们现在可以分割文件。哪个不在这里..也不在谷歌。我现在正在寻找它超过一个小时,我找不到正确的方法来做这件事。
答案 0 :(得分:2)
这些链接肯定有用。这是一个例子
greeter.js
module.exports = {
hello: function(name) {
console.log("Hello, " + name);
},
bye: function(name) {
console.log("Goodbye, " + name);
}
};
index.js
var greeter = require('greeter');
greeter.hello("Foo");
greeter.bye("Bar");
答案 1 :(得分:0)
您可以使用(require)标记将文档包含在node.js
中require('/home/user/module.js');
将它们放在正确的位置
答案 2 :(得分:0)
如果您有文件,例如server.js
喜欢这样:
function a() {
console.log('This is a()');
}
function b() {
a();
}
b();
然后你可以像这样分开它:
server.js
:
const b = require('./b');
b();
b.js
:
const a = require('./a');
function b() {
a();
}
module.exports = b;
a.js
function a() {
console.log('This is a()');
}
module.exports = a;
有关详细信息,请参阅文档:
另见这个答案确实显示了如何为比我在此处展示的更复杂的案例做你想要的事情:
有关一些有趣的细节,请参阅这些答案:
答案 3 :(得分:0)
我得到了它的工作。解决方案如下:
文件:
server.js (root dir)
routes.js (root dir/routes/routes.js)
Server.js
var express = require('express');
var app = express();
var routes = require('./routes/routes');
app.listen(3001);
routes(app);
console.log('Started listening on port : 3001');
routes.js
module.exports = function(app) {
app.get('/', function(req, res) {
res.end('test');
console.log('Received GET request.');
});
};