1

API 呼び出しを取得すると、約 4,5 テーブルにインストールする必要があります。これは、エントリに子項目があり、さらに子項目があるためです。最初の挿入から 2 番目の挿入に (親 ID を使用して) データを渡す必要があるため、関数が多すぎます (関数 insertTable1、insertTable1Kids、insertTable1KidsKids など)。

これは良いデザインですか?私は非常に多くの機能を使用していることに悩まされています..これを処理するより良い方法はありますか?

4

1 に答える 1

1

クロージャーとasyncモジュールを使用します。

npm install async

あなたのコードは次のようになります...

var async = require('async');

exports.your_route = function(req, res) {
  var parent_id = req.query.parent_id;
  var calls = [];
  calls.push(function(callback) {
    // insertTable1 - use parent_id
    callback(false);
  });
  calls.push(function(callback) {
    // insertTable1Kids - use parent_id
    callback(false);
  });
  calls.push(function(callback) {
    // insertTable1KidsKids - use parent_id
    callback(false);
  });
  calls.push(function(callback) {
    // return response
    res.send("tabels for parent ID: "+parent_id+" created);
    callback(false);
  });
  async.series(calls);
};
于 2013-06-24T18:46:17.587 に答える