次の簡単なコードを考えてみましょう
function doGet(){
var app = UiApp.createApplication();
var panel = app.createVerticalPanel();
var handler = app.createServerHandler('click').addCallbackElement(panel);
var btn = app.createButton('Click', handler);
panel.add(button);
app.add(panel);
return app;
}
単一のパネルがあり、コールバック要素は唯一のパネルです。ただし、さまざまな目的で多くのパネルがある場合、複数のコールバック要素を追加するか、さまざまなパネルをすべて単一の「マスター」パネルに追加し、マスター パネルをコールバック要素として追加するというより良いアプローチは何ですか。これらのアプローチの長所と短所は何ですか?
以下のコード例
オプション1:
function doGet(){
...
var panel1 = app.createVerticalPanel();
var panel2 = app.createVerticalPanel();
var handler = app.createServerHandler('click')
.addCallbackElement(panel1)
.addCallbackElement(panel2) ; // Notice two callback elements added here
var btn = app.createButton('Click', handler);
...
return app;
}
オプション 2:
function doGet(){
...
var masterPanel = app.createVerticalPanel();
var panel1 = app.createVerticalPanel();
var panel2 = app.createVerticalPanel();
var handler = app.createServerHandler('click')
.addCallbackElement(masterPanel) ;
var btn = app.createButton('Click', handler);
masterPanel.add(panel1).add(panel2); // Master panel has both panels added to it
...
return app;
}
ある選択肢は他の選択肢よりも優れていますか?