是否有可能自动安装node.js脚本所需的模块?

是否有可能自动下载一个node.js脚本所需的模块? 我想知道是否有可能生成一个node.js脚本(如下所示)所需的模块列表,并自动安装它们,而不是手动安装,一个接一个(使用npm)。

#!/usr/bin/env node var DNode = require('dnode'); var sys = require('sys'); var fs = require('fs'); var http = require('http'); var html = fs.readFileSync(__dirname + '/web.html'); var js = require('dnode/web').source(); //the rest of this script is omitted. 

是的,有一个非常棒的代码,称为NPM: https : //npmjs.org/

您可以在package.json文件中指定相关软件包( 请参阅文档的语法),您可以使用npm install . 一下子把它们全部拉出来,然后从脚本中提取出来。

Package.json语法页面: https : //docs.npmjs.com/getting-started/using-a-package.json

第一次安装一个模块,你可以提供任意数量的模块来安装,并添加--save参数来自动将它添加到你的package.json

 npm i --save dnode request bluebird 

下一次有人会执行npm i它会自动安装package.json指定的所有模块

我已经为此写了一个脚本

 (function(){ var r = require require = function (n){ try{ return r(n) } catch(e){ r('child_process').exec('npm i ' + n,function (err,body){ try{ console.log('Module "' +n + '"" not found, try to install. Please restart the app\n' + body ) return r(n) } catch(e){ } }) } } })()