DocsList.createFolder()创建一个名为'undefined'的额外文件夹

时间:2013-05-23 03:18:20

标签: google-apps-script google-docs-api

我正在尝试创建一个创建文件夹的简单函数。该函数的参数是新文件夹的名称。当我尝试这样做时,该函数会根据需要创建文件夹,但它还会创建一个名为“undefined”的额外文件夹。

create("myTestFolder"); // I've also tried explicitly declaring a variable as a string and
                        // then passing that variable

function create(name)
{
    Logger.log(name); // Discussed below.
    DocsList.createFolder(name);
};

当我检查日志的内容时,我看到了预期的字符串,但我也看到第二行包含文本“undefined”,这与我看到的结果一致。

1 个答案:

答案 0 :(得分:1)

您的代码看起来很尴尬。保存后,您正在从菜单中运行“创建”功能?然后你的create函数确实会被调用两次。一旦进行了脚本初始化,因为您直接从全局范围调用它,然后再次实际上由Run菜单触发,其中name参数确实未定义。

我认为你应该把它改成这样的东西:

function testCreate() {
  create("myTestFolder");
}

function create(name) {
  Logger.log(name);
  DocsList.createFolder(name);
}

然后,在“运行”菜单中,调用testCreate而不是create