1

我正在尝试弄清楚如何将一些任意状态传递给 Google Apps 脚本中的 ServerHandler。以下代码说明了这个问题 - 有人可以帮忙吗?

谢谢。

function myFunc(e) {
// want to get my data object back out here..?
}


function setUp()  
{
  var data = getMyDataArray();

  // ... set up UI...  
  var h = app.createServerHandler('myFunc');

  // How do I passs my data object to the myFunc handler?
  flow.add(app.createButton().setText("OK").addClickHandler(h));

  app.add(flow); 
  s.show(app);  
}
4

1 回答 1

3

您可以使用Hidden 元素来存储任意数据并将其与服务器处理程序调用一起发送。问题是元素只能存储一个字符串。但是你可以使用 JSON 来解决这个问题。

function myFunc(e) {
  var yourObj = Utilities.jsonParse(e.parameter.yourObject);
  //do what you need
}


function setUp()  
{
  var data = getMyDataArray();

  // ... set up UI...  

  var hidden = app.createHidden("yourObject", Utilities.jsonStringify(data));
  var h = app.createServerHandler('myFunc').addCallbackElement(hidden);
  flow.add(app.createButton().setText("OK").addClickHandler(h));

  app.add(flow); 
  s.show(app);  
}
于 2013-03-06T15:14:04.437 回答