0

関数を「チェーン」することは可能ですか?たとえば、serverclickhandlerがあり、その直後に別の関数を呼び出したいとします。どうすればいいですか?

ありがとう。

4

2 に答える 2

3

最初のハンドラーの後に2番目のハンドラーを実行するには、最初のハンドラーから直接呼び出す必要があります。

var app = null;
function firstHandler(e) {
  if( app == null )
    app = UiApp.getActiveApplication();
  //do your thing

  //now, instead "return app;" you return the second handler
  return secondHandler(e);
}

function secondHandler(e) {
  if( app == null )
    app = UiApp.getActiveApplication();
  //do your job
  return app;
}

varをグローバルスコープに配置したので、必要な場合にのみ取得でき(明示的に渡すことなく関数間で共有)、2回目の呼び出しappの(少なくとも私にとっては)コストがかかり、未知の動作を節約できます。getActiveApplication()

于 2012-05-31T11:51:00.497 に答える
1

あなたの質問を正確に理解したかどうかはわかりませんが、参照するサーバーハンドラーはそのために正確に作成されています...(ドキュメントを参照)UI要素に複数のハンドラーを割り当てて、さまざまな関数をトリガーし、最終的にそれらをチェーンできることに注意してください。

于 2012-05-30T17:55:06.263 に答える