のfs.readFileのコールバックに追加パラメータを渡す追加のパラメータをfs.readFile
のコールバック関数に渡すことは可能ですか?私は、ディレクトリを読み込んですべてのXML文書を解析するコードを持っています。追加の処理のためにファイル名をコールバックチェーンに渡す必要があります。今のところ私のコードはここノードjs
var fs = require('fs');
var path = require('path');
module.exports.extractXMLBody = function (dirPath, ext) {
fs.stat(dirPath, function (err, stats) {
if (stats.isDirectory()) {
fetchFiles(dirPath, ext, function (listOfFiles) {
_.each(listOfFiles, function (val, key) {
var completePath = dirPath + '/' + val;
var fileName = path.basename(val, path.extname(val))
// TODO : Figure out to pass additional parameters
fs.readFile(fullPath, parseXML);
});
});
}
});
}
parseXML
である私は、コールバック関数parseXML
に変数newFileName
を渡したい別の関数&として定義したコールバックです。
注:コールバックを匿名関数として記述すると、変数へのアクセスを渡すことができますが、コールバックのネストを避けるようにしています。
私にとっては悪いニュースです。匿名の機能で行くことを私に任せます。 –