Domanda

Ho iniziato a giocare con koa , ma finora non sono riuscito a trovare una soluzione decente per ricaricare automaticamente ilApplicazione dopo le modifiche del codice.

La mia comprensione è quella Nodemon è la soluzione preferita nell'universo del nodo, ma sto ottenendo errori a causa del --harmonyBandiera (richiesta da KOA):

$ node_modules/.bin/nodemon /path/to/node-unstable/bin/node app.js
/path/to/node-unstable/bin/node --harmony $@
                     ^^^^^^^
SyntaxError: Unexpected identifier
[nodemon] app crashed - waiting for file changes before starting...
.

È stato utile?

Soluzione

node_modules/.bin/nodemon --harmony-generators app.js dovrebbe essere sufficiente

Altri suggerimenti

Vorrei raccomandarti "PM2": http://pm2.keyymetrics.io/

PM2 è un gestore di processo. Gestisce gli stati delle applicazioni, quindi puoi iniziare, interrompere, riavviare ed eliminare i processi.

È possibile installare facilmente PM2 (generalmente sulla macchina) digitando: Sudo NPM Install -g PM2

Fondamentalmente PM2 Quando vedi alcune modifiche del tuo codice, riavvia il processo in istanza, se il tuo processo si blocca, verrà riavviato e l'errore verrà registrato .. Per ulteriori informazioni, dai un'occhiata alla pagina della documentazione: http://pm2.keyymetrics.io/docs/usage/cluster-mode/

Impostazione dell'opzione 'Execmap' in questa attività Gulp funziona per me:

var nodemon = require('gulp-nodemon');

gulp.task('serve-dev', function() {
    var options = {
        script: './src/server/app.js',
        execMap: { 
            "js": "node --harmony"
        },
        delayTime: 1,
        env: {
            'PORT': port,
            'NODE_ENV': 'dev'
        },
        watch: ['./src/server/']
    };

    return nodemon(options);
});
.

Ovviamente le tue altre opzioni potrebbero differire, ma ho incluso il tutto come mi infastidisce quando sto imparando qualcosa per vedere solo il minimo nudo in una risposta.

Ho finito di recente la creazione di una semplice API Web utilizzando KOA e come per un'azione di ricarica dopo le modifiche del codice ho utilizzato Babel-watch

Il vantaggio di usare è già indicato nel repo:

.

Se sei stanco di usare il nodo Babel insieme a Nodemon (o soluzione simile).Il motivo per cui la configurazione sopra menzionata si esibisce così male è il tempo di avvio del nodo Babel stesso.Babel-watch inizia solo Babel nel processo "Master" dove inizia anche il file watcher.Anche la traspirazione viene eseguita in tale processo.Sugli eventi di file-watcher, genera un processo di nodo puro e passa il codice traspirato dal processo genitore insieme alle mappe sorgente.Questo ci consente di evitare di caricare Babele e tutti i suoi DIP ogni volta che riavviamo lo script / app JS.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top