大きなapp.js
ファイルがあり、コードを分割したい。私はリファクタリングNodeJs関数
module.exports = function(app){
app.get('/', function (req, res) {
res.redirect('/page1');
});
app.get('/page1', function (req, res) {
res.render('page1');
});
app.get('/page2/:id', function (req, res) {
res.render('page2', {
val: Number(req.params.id)
});
});
}
routes.js
と呼ばれるモジュールにすべての私のルートを取って、私のapp.jsに私が
const routes = require('./Server/routes')(app);
だから、これは正常に動作を呼び出します。
私は
function loadData(id, callback) {
fs.readFile('./database.json', 'utf8', function (err, data) {
var json = JSON.parse(data);
var arr = json.arr;
var obj = arr.find(e => e.id === Number(id));
callback(obj);
});
}
のようないくつかの機能を持っており、あまりにも別々のファイルにそれらを持っていると思います。これどうやってするの? 1つの関数をエクスポートできますが、複数の関数をどのようにエクスポートできますか?
module.exports = function(){
function sayHello(){
console.log("Hello");
}
function calc(){
return 5 + 7;
}
}
同様
はあなたにも
module.export = {
sayHello: function() {
console.log("Hello");
},
calc: function() {
return 5 + 7;
}
}
// usage: const mymodule = require('path/to/your/file');
エクスポートできるオブジェクトをエクスポートし、オブジェクトの内側に、あなたの関数を定義することができるモジュールを必要とし、あなたの新しいモジュールで
myModule.sayHello();
var num = myModule.calc();
ここにあなたは行く(https://gist.github.com/oneturkmen/cf0cddeb80e10c415c8ab89d2c577293)。これがあなたが求めているものなのかどうか教えてください。 – oneturkmen
私はそう思います、これは正しいですか? https://hastebin.com/unobutifem.js – peterHasemann