è facile/possibile eseguire un file js nodo da un altro file js del nodo? Per esempio, sto avendo due file test1.js e test2.js. voglio eseguire il file test1.js da test2.js.Carica ed esegue il file esterno in node.js
risposta
Penso che il modo migliore per realizzare ciò che si sta tentando di fare sarebbe quello di fare quello che suggerisce la mia altra risposta. Ma per eseguire comandi sulla riga di comando come suggeriscono le tue domande, si desidera utilizzare child_process.exec
. Ad esempio:
var exec = require('child_process').exec,
child;
child = exec('node test2.js {{args}}',
function (error, stdout, stderr) {
console.log('stdout: ' + stdout);
console.log('stderr: ' + stderr);
if (error !== null) {
console.log('exec error: ' + error);
}
});
È sufficiente eseguire require('test2.js')
e quindi chiamare una funzione sull'oggetto esportato. Da documentation on modules:
Il nodo dispone di un semplice sistema di caricamento del modulo. Nel nodo, i file e i moduli sono in corrispondenza uno a uno. Ad esempio, foo.js carica il modulo circle.js nella stessa directory.
I contenuti di foo.js:
var circle = require('./circle.js');
console.log('The area of a circle of radius 4 is ' + circle.area(4));
Il contenuto di circle.js:
var PI = Math.PI;
exports.area = function (r) {
return PI * r * r;
};
exports.circumference = function (r) {
return 2 * PI * r;
};
I circle.js modulo ha esportato nell'area funzioni() e la circonferenza(). Per esportare un oggetto, aggiungere all'oggetto esportazioni speciali.
Si noti che le esportazioni sono un riferimento a module.exports rendendolo adatto solo per la conversione. Se si sta esportando un singolo oggetto come un costruttore, si vorrà utilizzare invece module.exports direttamente.
function MyConstructor (opts) {
//...
}
// BROKEN: Does not modify exports
exports = MyConstructor;
// exports the constructor properly
module.exports = MyConstructor;
Le variabili locali del modulo saranno private. In questo esempio la variabile PI è privata di circle.js.
Il sistema del modulo è implementato nel modulo require ("module").
Um ... Non so perché questa risposta abbia ottenuto un voto negativo. È il modo corretto di interagire con i moduli anche se non è la risposta accettata ... – kentcdodds
Se creo un modulo, non sarò in grado di eseguirlo da solo. Dispongo di script separati per alcune attività e quindi di alcuni script di dispatcher in grado di eseguire tutte le attività richieste nell'ordine specificato. Se le mie attività sono come moduli con esportazioni, non posso eseguire queste attività da solo, dovrò creare uno script wrapper solo per eseguire un'attività. – JustAMartin
- 1. carica ed esegue l'ordine degli script
- 2. Estensione Chrome: carica ed esegui script esterno
- 3. Carica variabili da file esterno in PHP
- 4. Come si esegue un programma esterno in node.js su Windows?
- 5. Carica file js esterno in un altro file js
- 6. Apre ed esegue il file nell'interprete SML dall'interno di Vim
- 7. Carica file rake ed esegui attività da altri file
- 8. Node-webkit esegue un comando esterno?
- 9. esegue un programma esterno (eseguibile) in python?
- 10. Carica file esterno nel bucket AWS S3 utilizzando PHP SDK
- 11. per uso interno ed esterno
- 12. Carica i dati in Redshift usando Node.js
- 13. Loop singolo ed eventi in Node.js
- 14. Carica un file EXE ed eseguilo dalla memoria
- 15. gestione eccezioni in node.js ed express
- 16. Node.js ed Express su Windows
- 17. Come eseguire il rendering di più file .js in formato nidificato in Node.js ed Express?
- 18. esegue più istanze di node.js in parallelo
- 19. Come svuotare correttamente il file Node.js writeStream?
- 20. Carica file nell'app Express.js
- 21. Carica un DOM ed esegui javascript, lato server, con .Net
- 22. Carica gli stili WPF o altre risorse statiche da un file o un assieme esterno
- 23. in che modo Android memorizza ed esegue programmi
- 24. Come si installa ed esegue Mocha, il modulo di test Node.js? Ottenere "mocha: comando non trovato" dopo l'installazione
- 25. Come ottenere il mio indirizzo IP esterno con node.js?
- 26. jQuery - collega ed esegue un singolo gestore?
- 27. Carica file di simboli
- 28. Carica un CSS esterno per uno specifico DIV
- 29. Gruntjs guarda cartelle diverse ed esegue attività
- 30. Vim: esegue il file corrente?
Cosa intendete per * esecuzione *? Come sarebbe diverso dal fare 'require ('test2.js')' in test1.js? – adrianp
@adrianp "nodo test1.js" in questo modo stiamo eseguendo o eseguendo i file js del nodo. voglio eseguire test1.js da test2.js – sudhakar
@sudhakar, stai parlando di qualcosa [come questo] (http://www.dzone.com/snippets/execute-unix-command-nodejs)? – kentcdodds