在谷歌脚本之间共享代码

时间:2017-04-03 13:29:27

标签: javascript google-apps-script refactoring

我有一个脚本,我经常使用和更新+3电子表格,我发现每次单独更新每个脚本都很烦人。是否有任何方法可以从每个脚本的一个位置共享(导入/要求)代码?

我不能将所有这些电子表格放在同一个文件中,因为它们涉及不同的客户。

我的代码包含以下功能:

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  ui.createMenu('Custom Export')
      .addItem('iOS', 'exportForIos')
      .addItem('Android', 'exportForAndroid')
      .addItem('JSON-iOS', 'exportJSONForIos')
      .addItem('JSON-Android', 'exportJSONForAndroid')
      .addToUi();
}

2 个答案:

答案 0 :(得分:2)

Google Apps脚本实际上允许将脚本用作library并在各种脚本之间共享代码。

  1. 我创建了stand-alone script
  2. 在console.developer
  3. 上设置项目设置和API执行密钥
  4. 使用它的项目ID并将其作为库添加到我的每个脚本
  5. 使用我设置的标识符(在本例中为Trad)复制菜单中所需的主要功能:
  6. ```

    function onOpen() {
      Trad.onOpen();
    }
    function exportForIos() {
      Trad.exportForIos();
    }
    function exportForAndroid() {
      Trad.exportForAndroid();
    }
    function exportJSONForIos() {
      Trad.exportJSONForIos();
    }
    function exportJSONForAndroid() {
      Trad.exportJSONForAndroid();
    }
    function exportForAndroidToDrive() {
      Trad.exportForAndroidToDrive();
    }
    function prefixSelectedCellsWith(chars) {
      Trad.prefixSelectedCellsWith(chars);
    }
    

    ```

答案 1 :(得分:0)

自己主持(外部)并参考它,这会有效吗?

示例:

  <script src=" http://www.yourdomain.com/yourscripts/thescript.js"></script>