Je veux toujours exécuter Node.JS avec le --harmony
drapeau. Existe-t-il un moyen d'activer facilement ce drapeau par défaut?
(Remarque: je fonctionne sous Windows, je n'ai donc accès qu'à Cygwin ou Mingw en tant que shells.)
Si vous parlez d'exécuter de manière interactive, vous pouvez utiliser un bash alias
. Mettez ceci dans votre ~/.bashrc
:
alias node="node --harmony"
(Pour ce qui suit: notez que lorsque je dis «exécutable», je ne parle pas seulement de fichiers binaires ou de «fichiers .exe». )
Si vous souhaitez exécuter un exécutable, par exemple dans un autre script, vous pouvez créer un script shell qui lance la cible avec l'indicateur supplémentaire:
Créez un nodeHarmony
et mettez-le dans votre chemin de recherche, par exemple /usr/local/bin
:
#!/bin/sh
node --harmony "$@"
Alors chmod a+x
ça.
Exécutez ensuite nodeHarmony
chaque fois que vous souhaitez ajouter cet indicateur. Si vous souhaitez remplacer l' node
exécutable, vous pouvez probablement renommer node
quelque chose d'autre (par exemple node_original
), nommer le script node
et l'utiliser node_original
dans le script.
Vous pouvez également créer le script de commandes Windows équivalent, qui fonctionnerait en dehors de Cygwin / MinGW:
@echo off
node --harmony %*
Cela se comporterait de la même manière, mais pourrait présenter des effets étranges avec certaines combinaisons d'arguments, car la liste serait analysée deux fois - une fois lors de l'exécution du script de commandes et une fois dans le script lors de l'exécution node
. Quelques solutions de contournement ici .
Si vous êtes prêt à recompiler node.js, l'article Comment obtenir l'harmonie dans votre node.js dit:
Une fois que vous avez le code source, ouvrez-le
deps/v8/src/flag-definitions.h
et recherchez la ligne 115. Changez le drapeau de faux à vrai:DEFINE_bool(harmony, true, "enable all harmony features")
Compilez ensuite Node:
./configure && make && make install
Apparemment, https://www.npmjs.org/package/setflags peut être utilisé pour définir les indicateurs au moment de l'exécution, mais je n'ai pas pu l'installer .
Vous pouvez modifier le fichier node.js et:
Recherchez une variable qui vérifie son réglage pour "--harmony" ou "harmonie", quelque chose comme:
if (variable_name == 'harmony') ...
Définissez cette variable plus tôt dans le code:
var this_variable_name = 'harmony';
Pourquoi ne configurez-vous pas le package.json avec une commande de scripts ?
Par exemple, ajoutez à package.json:
"scripts": {
"start": "node --harmony server.js"
}
Exécutez ensuite en cmd (dans le répertoire du projet):
npm start