La mia app utilizza Node.js e Express 4 e ha il seguente codice nel file app.js
che si trova nella directory root:
var express = require('express');
var index = require('./routes/index');
var users = require('./routes/users');
var app = express();
app.use('/', index);
app.use('/users', users);
La cartella routes
nella directory root contiene un file index.js
con il seguente codice:
var express = require('express');
var router = express.Router();
router.get('/', function (req, res, next) {
res.render('index');
});
module.exports = router;
La cartella routes
contiene anche un file users.js
con il seguente codice:
var express = require('express');
var router = express.Router();
router.get('/', function (req, res, next) {
res.render('users');
});
module.exports = router;
Sono nuovo di Express e Node.js. Mi risulta che questa struttura porti le richieste del browser a domainName.com
per eseguire il file index.js
, mentre le richieste a domainName.com/users
eseguiranno il file users.js
, con la conseguente visualizzazione di diverse visualizzazioni nel browser.
Qual è lo scopo di organizzare il codice in questo modo? (ad esempio, perché app.use()
in app.js
viene utilizzato per isolare ogni router.get(path, callback)
nel suo rispettivo modulo?)
La pratica comunemente accettata è quella di organizzare percorsi in modo diverso per un'app singola pagina rispetto a un sito Web costituito prevalentemente da testo statico, ad esempio un blog? Se sì, come?