Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

google.script.run not returning string

Trying to figure out Google Apps Script for making Google docs addons. I have:

Code.gs

function helloWorld() {
    return "Hello World";
}  

under code.gs which I call in:

Sidebar.html

console.log("This should say Hello World: " + google.script.run.helloWorld()) 

It returns:

This should say Hello World: undefined  

What is the obvious thing I am missing?

like image 731
ughdotjs Avatar asked Jan 07 '17 23:01

ughdotjs


1 Answers

google.script.run won't return a value like you'd expect a usual Apps Script function to. Instead, you should use .withSuccessHandler(functionToRun)

Like this:

    google.script.run
        .withSuccessHandler(functionToRun)
        .helloWorld();

    function functionToRun(argument) {
        console.log("This should say Hello World: " + argument);
    }

In this example, the server-side Apps Script function helloWorld will run the client-side function functionToRun() and pass the result of helloWorld() as an argument.

like image 151
123 Avatar answered Oct 16 '22 15:10

123