为什么我在 Google App Maker 中调用这些脚本时得到未定义的值?
Why am I getting an undefined value when calling these scripts in Google App Maker?
我不明白为什么当我从 ClientScript 方法调用 ServerScript 方法时,我得到的值是未定义的。
客户端脚本:
function clientScript() {
var message;
message = google.script.run.test();
console.log("Message: " + message);
}
服务器脚本:
function serverScript() {
return "hello";
}
我希望控制台打印:消息:你好。但是,我将此打印到我的控制台:消息:未定义。为什么当我在我的 ServerScript 方法中返回一个已定义的值时,我在我的 ClientScript 方法中得到一个未定义的值?谢谢!
因为服务器调用是异步的。为了处理服务器响应,您需要传递回调。这是来自 Apps Script docs 的片段:
function onSuccess(numUnread) {
console.log(numUnread);
}
google.script.run.withSuccessHandler(onSuccess)
.getUnreadEmails();
以防万一 AMs 文档对同一事物的解释 - https://developers.google.com/appmaker/scripting/client#call_a_server_script
我不明白为什么当我从 ClientScript 方法调用 ServerScript 方法时,我得到的值是未定义的。
客户端脚本:
function clientScript() {
var message;
message = google.script.run.test();
console.log("Message: " + message);
}
服务器脚本:
function serverScript() {
return "hello";
}
我希望控制台打印:消息:你好。但是,我将此打印到我的控制台:消息:未定义。为什么当我在我的 ServerScript 方法中返回一个已定义的值时,我在我的 ClientScript 方法中得到一个未定义的值?谢谢!
因为服务器调用是异步的。为了处理服务器响应,您需要传递回调。这是来自 Apps Script docs 的片段:
function onSuccess(numUnread) {
console.log(numUnread);
}
google.script.run.withSuccessHandler(onSuccess)
.getUnreadEmails();
以防万一 AMs 文档对同一事物的解释 - https://developers.google.com/appmaker/scripting/client#call_a_server_script