2016-04-24 8 views
0

Ich begann gerade OpenShift zu verwenden, um eine node.js Website zu hosten und ich wollte es lokal testen (anstatt Änderungen zu schieben und den Server jedes Mal neu starten, wenn ich meinen Code testen möchte) . Leider scheint der Standard-Code, mit dem openshift ausgeliefert wird, nicht zu mögen. Insbesondere, wenn ich 10 von meiner Kommandozeile ausführen, gibt es Fehler über die Verwendung von const (wie es sollte) mit let (nicht sicher warum) und mit dem Symbol (nicht sicher, wie zu beheben).Openshift Standard-Code funktioniert nicht mit lokalen Knoten ausführbar

Hier ist der Code, die Schiffe mit Openshift:

const cluster = require('cluster'), 
     stopSignals = [ 
     'SIGHUP', 'SIGINT', 'SIGQUIT', 'SIGILL', 'SIGTRAP', 'SIGABRT', 
     'SIGBUS', 'SIGFPE', 'SIGUSR1', 'SIGSEGV', 'SIGUSR2', 'SIGTERM' 
     ], 
     production = process.env.NODE_ENV == 'production'; 

let stopping = false; 

cluster.on('disconnect', function(worker) { 
    if (production) { 
    if (!stopping) { 
     cluster.fork(); 
    } 
    } else { 
    process.exit(1); 
    } 
}); 

if (cluster.isMaster) { 
    const workerCount = process.env.NODE_CLUSTER_WORKERS || 4; 
    console.log(`Starting ${workerCount} workers...`); 
    for (let i = 0; i < workerCount; i++) { 
    cluster.fork(); 
    } 
    if (production) { 
    stopSignals.forEach(function (signal) { 
     process.on(signal, function() { 
     console.log(`Got ${signal}, stopping workers...`); 
     stopping = true; 
     cluster.disconnect(function() { 
      console.log('All workers stopped, exiting.'); 
      process.exit(0); 
     }); 
     }); 
    }); 
    } 
} else { 
    require('./app.js'); 
} 

Mit ähnlichem Code in anderen Dateien (app.js und utils/* js.), Die die Website selbst ausgeführt werden. Meine Frage ist, wie bekomme ich meine Node-Implementierung, um ihren Code lokal zu laufen, und wenn ich es nicht bekomme, wie sollte ich ihren Code in Arbeit ändern (kann ich nur alle 'Const' löschen, zu `ändern 'und' lassen 'zu' var ')?

+0

Jea du kannst nur const ändern und var. Mit dem Symbol verwenden Sie einfach stringconcatination. –

+0

Oder Sie könnten eine lokale Version nie Knoten verwenden. –

+0

Das ist die Sache, soweit ich das beurteilen kann, betreibe ich die neueste Version von Node. Wenn ich 'node --version 'starte, bekomme ich v5.11.0, was bedeutet, dass * * * funktionieren sollte, nein? – LambdaBeta

Antwort

0

Include 'verwenden Sie streng'; in beiden app.js und start.js und es wird lokal wie erwartet ausgeführt.