Beh v režime debug a release
Total.js beží v jednom z dvoch režimov, debug na vývoj a release na server, a globálna boolean hodnota DEBUG hovorí vášmu kódu, ktorý je aktívny. V režime debug aplikácia beží pod watcherom, ktorý ju reštartuje pri zmene súboru, chyby ukazujú podrobnosti a generujú sa source mapy. Režim release nemá watcher a chybové stránky neobsahujú technické podrobnosti.
Režim určuje spôsob spustenia aplikácie, v štartovacom skripte (index.js), ktorý volá Total.run(options):
- predvolený je debug s watcherom;
options.release = truespustí režim release; štartovací skript generovaný Total.js ho nastavuje z príkazového riadka, takženode index.js --releaseje spôsob, ako spustiť produkciu;options.watcher = falsespustí jeden proces bez watchera a to je vždy režim release (používajú ho príklady tohto receptára).
Predtým, než o režime rozhodne Total.run(), má DEBUG predvolenú hodnotu z NODE_ENV: je false, keď NODE_ENV=production, a true inak. Kód, ktorý sa vykoná pri načítaní modulu, vidí túto predvolenú hodnotu, takže sa na výsledný režim nespoliehajte na NODE_ENV, ale iba na DEBUG po spustení aplikácie.
Trasy môžu režim sledovať. Príznak @debug spôsobí, že trasa existuje len v režime debug, a @release len v režime release; v druhom režime URL odpovie 404. @debug použite pre nástroje, ktoré potrebujete pri vývoji (prehliadač databázy, trasa na testovacie dáta), aby sa nikdy omylom nedostali do produkcie.
exports.install = function() {
ROUTE('GET /mode/', mode);
ROUTE('GET /tools/ @debug', tools);
ROUTE('GET /status/ @release', status);
};
function mode($) {
$.json({ debug: DEBUG });
}
function tools($) {
$.json({ tools: true });
}
function status($) {
$.json({ status: 'ok' });
}