関数を「チェーン」することは可能ですか?たとえば、serverclickhandlerがあり、その直後に別の関数を呼び出したいとします。どうすればいいですか?
ありがとう。
関数を「チェーン」することは可能ですか?たとえば、serverclickhandlerがあり、その直後に別の関数を呼び出したいとします。どうすればいいですか?
ありがとう。
最初のハンドラーの後に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()
あなたの質問を正確に理解したかどうかはわかりませんが、参照するサーバーハンドラーはそのために正確に作成されています...(ドキュメントを参照)UI要素に複数のハンドラーを割り当てて、さまざまな関数をトリガーし、最終的にそれらをチェーンできることに注意してください。