如何在 Google 脚本中获取和使用返回值



我在funcs.gs中的Google脚本中有一个函数,它正在返回一个对象。根据用户输入的内容,对象会返回并显示一些结果。但我想更进一步,用这些结果来决定是否会出现错误消息。我无计可施,因此我有理由在这里提出要求。

function data(num){

if (condition met){

let Obj = {thing1:value1, thing2: value2}
return prjObj;

//Obj works perfectly fine 

}else{

let Obj = {thing1: value3, thing2: value4};
return  Obj;
//this also works fine 

}//end of if statement  
}//end of getData function

现在我在HTML文件中使用了一个函数(使用了jQuery,但不需要(

$(function redbox(){
let repeater = setTimeout(redbox, 5000);
let redbox1 ={}
redbox1.hidebox = document.getElementById("something").hidden = true;
redbox1.unhidebox = document.getElementById("something").hidden = false;
//i tried this and just tried to put redbox1.unhidebox under the return statement but it does not work 
//google.script.run.Data(redbox1 )
console.log(google.script.run.data());
})

即使使用num作为参数,我也不知道为什么数据函数返回undefined。目标是在调用else语句时将隐藏元素设置为false。我使用rexbox1作为对象,因为这将允许我将其作为数据函数中的参数传递,但它没有显示。

方法google.script.run.myFunction((将返回文档中描述的void

此方法是异步的,不直接返回;但是,服务器端函数可以向客户端返回一个值,作为传递给成功处理程序的参数

因此,要检索函数返回的内容,必须将其与方法google.script.run.withSuccessHandler((一起使用,如下所示:

function redbox(returnedValue) {
console.log(returnedValue);
}
google.script.run.withSuccessHandler(redbox).data(num);

如果应用程序脚本函数没有错误,则从应用程序脚本功能返回的值将传递给HTML JavaScript脚本中所需的函数。

试着这样写:

扔掉所有其他垃圾。

javascript:

function getData() {
google.script.run
.withSuccessHandler(function(obj){
console.log(obj.foo);
})
.data()
}

gs:

function data() {
return {foo:bar}
}

相关内容

  • 没有找到相关文章

最新更新