Google Appscript:未捕获的ScriptError:脚本已完成,但返回的值不是受支持的返回类型

时间:2015-10-27 17:31:50

标签: google-apps-script

我在这里和整个谷歌的所有地方都进行了搜索并遇到了类似的问题,但解决方案并没有帮助我。我仍然得到“未捕获的ScriptError:脚本已完成但返回的值不是支持的返回类型。”即使Logger.log信息看起来很好,但是当它被提供给我的index.html文件时,它会出现错误。请指教。下面是我从电子表格生成数据的代码,它返回一个正好符合我想要的对象的Logger.log,但似乎没有作为index.html文件的返回类型。此外,这是我创建的WebApp。它要求用户提供电子表格网址,并使用该网址解析电子表格中的数据。我已修改它,以便它包含一个返回“不支持”数据的URL。在我必须共享任何电子表格信息之前,我希望有人会看到语法错误。

 function getData(){

  var url = "https://docs.google.com/spreadsheets/d/1ZfWLpEoID85RCsDLiVP04ENuhaYT6KUSPViR4fsEsdk/edit;

  var ss = SpreadsheetApp.openByUrl(url).getSheets()[0];

  var data = ObjApp.rangeToObjects(ss.getDataRange().getValues());


  var object = [];
  for(var i=0; i < data.length; i++) {
object.push([
              data[i].observer,
              Utilities.formatDate(new Date(data[i].date),Session.getScriptTimeZone(),"MM/dd/yyyy").toString(),
              data[i].scriptevidence,
              data[i].domain1PlanningPreparation,
              data[i].domain2ClassroomEnvironment,
              data[i].domain3Instruction,
              data[i].domain4ProfessionalResponsibilities]); 

}

  Logger.log(object); //the logger is perfectly what I want

  return object; //not supported according to the console

}

我很感激任何建议。提前谢谢。

编辑:通过包装我的每个迭代数据并将其转换为字符串来解决问题。

 (data[i].observer).toString(),
              Utilities.formatDate(new Date(data[i].date),Session.getScriptTimeZone(),"MM/dd/yyyy").toString(),
              (data[i].scriptevidence).toString(),
              (data[i].domain1PlanningPreparation).toString(),
              (data[i].domain2ClassroomEnvironment).toString(),
              (data[i].domain3Instruction).toString(),
              (data[i].domain4ProfessionalResponsibilities).toString()]); 

1 个答案:

答案 0 :(得分:0)

我也遇到了这个问题。最后,这是一个 date 问题。就像你一样,通过<nav class="navbar navbar-default" role="navigation"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">LOGO</a> </div> <div class="collapse navbar-collapse navbar-ex1-collapse"> <ul class="nav navbar-nav"> <li><a href="#">Link</a></li> <li><a href="#">Link</a></li> <li><a href="#">Link</a></li> <li><a href="#">Link</a></li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li><a href="#">Separated link</a></li> <li><a href="#">One more separated link</a></li> </ul> </li> </ul> </div> </nav>将我的数据放在一个字符串中解决了我的问题。