nodebook icon indicating copy to clipboard operation
nodebook copied to clipboard

"Pratique Accéder aux valeurs du fichier package.json"

Open Drozerah opened this issue 5 years ago • 4 comments

Ne fonctionne pas sous Windows:

{
  ...
  "config": {
    "port": "4000"
  };
  "scripts": {
    "start": "node server --port $npm_package_config_port",
  }
}

D’après ce post https://stackoverflow.com/a/39868894/9370788 + test de mon coté, ceci fonctionne:

{
  ...
  "config": {
    "port": "4000"
  };
  "scripts": {
    "start": "node server --port %npm_package_config_port%",
  }
}

Mais rend donc le script dépendant de l'OS sur lequel il est exécuté ce qui est gravissime sans autre mention :)

Drozerah avatar Oct 21 '19 18:10 Drozerah

Ah la la, c'est ma faute !

J'aurais dû utiliser le module cross-env pour garder la notation similaire, et fonctionnelle sur tous les OS.

Si tu l'installes et que tu remplaces l'exemple comme ceci, ça donne quoi ?

{
  ...
  "config": {
    "port": "4000"
  };
  "scripts": {
    "start": "cross-env node server --port $npm_package_config_port",
  }
}

Merci pour la remontée du problème :-)

thom4parisot avatar Oct 21 '19 19:10 thom4parisot

Le module cross-env ne prend pas en charge le problème car il n'est pas conçu pour couvrir l'utilisation spécifique de variables au sein de scripts NPM - ce que stipule la doc (voir section cliquable: "Why don't you use cross-env?" ) du module cross-var qui, lui, se porte volontaire à la résolution du problème identifié, ainsi:

{
  ...
  "config": {
    "port": "4000"
  };
  "scripts": {
    "start": "cross-var node server --port $npm_package_config_port",
  }
}

permet bien de retourner la valeur du port au sein du script sous Windows.

Merci pour ton retour et surtout le livre qui m'accompagne souvent même jusqu'en terrasse café journalier durant cette phase d'immersion avec Node.js que j'affectionne sérieusement ;)

Drozerah avatar Oct 22 '19 10:10 Drozerah

Ah, merci pour cette nuance que je ne connaissais pas (le module cross-var non plus d'ailleurs) :-)

Je note, je vais clarifier ça.

Merci pour ton retour et surtout le livre qui m'accompagne souvent même jusqu'en terrasse café journalier durant cette phase d'immersion avec Node.js que j'affectionne sérieusement ;)

Génial ! Je suis à l'écoute de tes retours si des passages du livre te parlent moins et gagnerait à être plus clairs, ou plus complets vis à vis de Windows.

thom4parisot avatar Oct 22 '19 17:10 thom4parisot

Ok ! => #451

Drozerah avatar Oct 23 '19 18:10 Drozerah