Voglio sempre eseguire Node.JS con la --harmonybandiera. C'è un modo per attivare facilmente questo flag per impostazione predefinita?
(Nota: sto usando Windows, quindi ho accesso a Cygwin o Mingw solo come shell).
Voglio sempre eseguire Node.JS con la --harmonybandiera. C'è un modo per attivare facilmente questo flag per impostazione predefinita?
(Nota: sto usando Windows, quindi ho accesso a Cygwin o Mingw solo come shell).
Risposte:
Se stai parlando di correre interattivamente, puoi usare un bash alias. Metti questo nel tuo ~/.bashrc:
alias node="node --harmony"
(Per quanto sotto: nota che quando dico "eseguibile", non intendo solo binari o "file .exe". "Eseguibili" includono tutto ciò che può essere eseguito senza invocare esplicitamente un interprete, che include script con un shebang. )
Se si desidera eseguire un eseguibile, ad esempio all'interno di un altro script, è possibile creare uno script shell che avvia la destinazione con il flag aggiuntivo:
Crea un nodeHarmonye inseriscilo nel tuo percorso di ricerca, ad esempio /usr/local/bin:
#!/bin/sh
node --harmony "$@"
Poi chmod a+xesso.
Quindi eseguire nodeHarmonyogni volta che si desidera aggiungere quella bandiera. Se vuoi sostituire l' nodeeseguibile, potresti probabilmente rinominare nodequalcos'altro (ad es. node_original), Nominare lo script nodee usarlo node_originalall'interno dello script.
È inoltre possibile creare lo script batch Windows equivalente, che funzionerebbe al di fuori di Cygwin / MinGW:
@echo off
node --harmony %*
Ciò si comporterebbe in modo simile, ma potrebbe presentare effetti strani con alcune combinazioni di argomenti, poiché l'elenco verrebbe analizzato due volte, una volta durante l'esecuzione dello script batch e una volta all'interno dello script durante l'esecuzione node. Alcune soluzioni alternative qui .
Se sei pronto per ricompilare node.js, l'articolo Come ottenere l'armonia in node.js dice:
Una volta ottenuto il codice sorgente, apri
deps/v8/src/flag-definitions.he cerca la riga 115. Cambia il flag da falso a vero:DEFINE_bool(harmony, true, "enable all harmony features")Quindi compilare Nodo:
./configure && make && make install
Apparentemente https://www.npmjs.org/package/setflags può essere utilizzato per impostare i flag in fase di esecuzione, tuttavia non sono riuscito a farlo installare .
Perché non configura package.json con un comando script ?
Ad esempio, aggiungi a package.json:
"scripts": {
"start": "node --harmony server.js"
}
Quindi eseguire in cmd (nella directory del progetto):
inizio npm