Chcę oddzielić moją aplikację na części, aby mieć coś takiego jak MVC ... Obecnie zorientowałem się, że działa exports
i jak komunikować się między różnymi plikami. Jedyne, czego nie rozumiem, to to, jak używać stałych w globalnym zasięgu? Obecnie mam coś takiego:Jak zdefiniować const w nodejs w zakresie globalnym?
// 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');
});
}
to możliwe, aby automatycznie przypisać ten stałe do server.js
lub muszę przekazać je jako zmienne?
ale id raczej argument zamiast funkcji ... Co więcej mogę nurkować w nodejs, bardziej zaczynam w przeciwieństwie do niego ... – Kin
Eksportuj zmienną oznacza wyeksportować singleton, więc możesz wymagać modułu, zmienić niektóre wartości, a gdy będzie to wymagało ponownie, otrzymasz ten sam obiekt. To tylko wzorzec projektowy, a nie wada pliku node.js lub nawet dowolny język programowania. –