我正在运行npm install命令以获取Node上的模块列表,并且有关于async的错误
TypeError:undefined不是函数
有什么问题?
var fs = require( "fs" ),
path = require( "path" ),
child_process = require( "child_process"),
async = require( "async"),
modulesPath = "../modules/";
var dirs = fs.readdirSync( modulesPath )
.filter( function( dir ) {
return fs.statSync( path.join( modulesPath, dir )).isDirectory();
});
var install = function() {
if ( dirs.length === 0 ) {
return;
}
var dir = dirs.shift();
console.log( "installing dependencies for : '" + dir + "'" );
child_process.exec( "npm prune --production | npm install", {
cwd: modulesPath + dir
}, install );
};
install();
答案 0 :(得分:1)
问题是你正在处理async
变量,好像它引用了一个函数,而实际上它引用了一个对象:
return this.async();
您应该更改上面的行,以便调用async
对象上的appropriate method:
return async.methodThatYouWantToCall();