1

次のコードスニペットがあります

async.waterfall([
  // Read directory
  async.apply(fs.readdir, '../testdata'),
  // Load data from each file
  function(files, callback) {
    async.each(files, loadDataFromFile, callback);
  }
], function(err) {
  if (err) {
    api.logger.error('Error while inserting test data', err);
  }
  next();
});

この部分を置き換える方法はありますか:

function(files, callback) {
  async.each(files, loadDataFromFile, callback);
}

関数だけで?上記のように、これを使用しasync.apply()て置き換えました:

function(callback) {
  fs.readdir('../testdata', callback);
}

.bind()これを行うために独自のヘルパー関数を作成することも、このままにしておくこともできますが、またはのような関数のみを使用してこれを行う方法があるかどうか疑問に思っていました.apply()

.bind()そこで使おうと思ったのです.apply()が、function(loadDataFromFile, files, callback)これはダメです。

4

1 に答える 1