Comment puis-je exécuter un Node.js script à partir d'une autre Node.js script

J'ai un Nœud autonome script appelé compile.js. Il est assis à l'intérieur du dossier principal d'un petit Express app.

Parfois, je vais courir le compile.js script à partir de la ligne de commande. Dans d'autres scénarios, je veux qu'il soit exécuté par l'Express app.

Les deux scripts à charger config de données à partir de la package.json. Compile.js ne pas exporter de méthodes en ce moment.

Quelle est la meilleure façon de charger ce fichier et de l'exécuter? J'ai regardé eval(), vm.RunInNewContext, et require, mais vous ne savez pas quelle est la bonne approche.

Merci pour toute aide!!

  • avez-vous considéré le var exec = require('child_process').exec; exec('noeud <path>/compile.js', ...) ?
  • Serait nodejs.org/api/process.html#process_process_execargv adaptée à vos besoins?
  • pourquoi ne pas tout simplement require() il?
  • ne pas exporter de méthodes en ce moment."
  • En fait, je pense exiger pourrait fonctionner, sauf que le script a quelque chose async passe. Peut-être il y a une version de ce rappel?
  • Exec-sync semble prometteur: davidwalsh.nom/sync-exec

InformationsquelleAutor dylanized | 2014-03-25