Voglio separare la mia app in parti per avere qualcosa come MVC ... Attualmente ho capito che exports
funziona e come comunicare tra diversi file. L'unica cosa che non riesco a capire è come usare le costanti nell'ambito globale? Attualmente ho qualcosa di simile:Come definire const in nodejs in ambito globale?
// start.js
const ROOT_DIR = __dirname;
const APP_DIR = ROOT_DIR + '/app/';
const MODULES_DIR = '/usr/local/lib/node_modules/';
const APP_PORT = 4935;
var server = require(APP_DIR + 'server.js');
server.start();
// server.js
exports.start = function() {
var express = require(MODULES_DIR + 'express'),
app = express(),
http = require('http'),
server = http.createServer(app),
io = require(MODULES_DIR + 'socket.io').listen(server),
fs = require('fs'),
path = require('path');
server.listen(APP_PORT);
app.use(express.static(ROOT_DIR + '/assets'));
app.get('/', function (req, res) {
res.sendfile(ROOT_DIR + '/views/index.html');
});
}
E 'possibile assegnare automaticamente questo costanti per server.js
o ho bisogno di passarli come variabili?
ma id più come un argomento piuttosto che una funzione ... Come più mi tuffo in nodejs, più comincio a differenza di ... – Kin
Esportare una variabile significa esportare un singleton, quindi è possibile richiedere un modulo, modificare alcuni valori e quando si richiede nuovamente si otterrà lo stesso oggetto. È solo un modello di progettazione, non uno svantaggio di node.js o di qualsiasi tipo di linguaggio di programmazione. –