Google Apps脚本库无法使用网络应用

时间:2017-07-12 21:06:20

标签: google-apps-script

我是Google Apps脚本中的网络开发新手,我很难尝试运行一个简单的webapp,它应该使用SlickNav jQuery Plugin来设置一个菜单示例。我成功将其设置为GAS库(您可以看到源代码here)。该插件需要jQuery 1.7以上版本,因此我还将jQuery(v2.1.0)设置为GAS库(单击here查看代码)。

将两者作为库导入后:webapp libraries

my webapp中,它就像开发中的魅力一样。模式:

webapp dev. mode

但在production mode中,它会抛出

“ReferenceError:undefined”jQuery“。(第1行,文件”slicknav.js“,项目”slicknav“)”

我花了3天时间试图让这个例子运行起来。我在这个例子中遗漏了什么吗?怎么会错?有人可以指出我正确的方向吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

您不能将Apps脚本中的JQuery用作Apps脚本,因为GAS没有可操作的DOM。

如果您希望在Web应用程序中使用JQuery或任何其他JavaScript库,则需要使用<script>标记添加它。例如在<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>内或<head>代码下方添加<body>

Google甚至还有一组托管库,您可以将这些库包含在您的网络应用中:https://developers.google.com/speed/libraries/

如果您不想使用CDN服务(例如Google托管库),您可以将源复制/粘贴到新的GAS html文件中,并将其包含在您的网络应用中。

示例:

<强> jquery.html

<script>
//Paste jquery.min.js here
</script>

<强>的index.html

<html>
    <head>
        <?!= HtmlService.createHtmlOutputFromFile('jquery').getContent(); ?>
    </head>
</html>

澄清后:

需要在slicknav之前加载JQuery,因为它需要它。它看起来像你,但这是它投掷的错误。我将首先简化您的过程并使用带有CDN托管库的脚本标记,看看是否有效。然后尝试在当前项目中包含文件,看看是否有效...等尝试以这种方式隔离问题。

值得注意的是,与部署时相比,您必须更新版本以应用和开发更改。