Google脚本运行从未执行

时间:2020-06-29 15:05:08

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

我正在尝试在Google文档中创建一个简单的插件,但是在阅读了文档之后,我无法弄清楚google.script.run是否有可能无法正常运行。 这是我的基本代码:

code.gs

function onOpen(e) {
  DocumentApp.getUi().createAddonMenu()
      .addItem('Start', 'showSidebar')
      .addToUi();
}

function onInstall(e) {
  onOpen(e);
}

function showSidebar() {
  var ui = HtmlService.createHtmlOutputFromFile('sidebar')
      .setTitle('NeuralText');
  DocumentApp.getUi().showSidebar(ui);
}

function dummyFunc(){
  var doc_id = DocumentApp.getActiveDocument().getId();
  Logger.log(doc_id);
  return doc_id;
}

sidebar.html

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
    <link rel="stylesheet" href="https://ssl.gstatic.com/docs/script/css/add-ons1.css">
    <!-- The CSS package above applies Google styling to buttons and other elements. -->

    <style>
    .branding-below {
      bottom: 56px;
      top: 0;
    }
    .branding-text {
      left: 7px;
      position: relative;
      top: 3px;
    }
    .col-contain {
      overflow: hidden;
    }
    .col-one {
      float: left;
      width: 50%;
    }
    .logo {
      vertical-align: middle;
    }
    .radio-spacer {
      height: 20px;
    }
    .width-100 {
      width: 100%;
    }
    </style>
  </head>
  <body>
    <div class="sidebar branding-below">
    <div class="output"></div>
      <form>
        <div class="block form-group">
          <label for="translated-text"><b>Insert URL</b></label>
          <input class="width-100" id="shared-brief"/>
        </div>
        <div class="block" id="button-bar">
          <button class="blue" id="test-btn">Test</button>
        </div>
      </form>
      
    </div>

    <div class="sidebar bottom">
      <img alt="Add-on logo" class="logo" src="https://www.gstatic.com/images/branding/product/1x/translate_48dp.png" width="27" height="27">
      <span class="gray branding-text">Translate sample by Google</span>
    </div>

    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    <script>
      $(function() {
        $('#test-btn').click(printTest);
        google.script.run.withSuccessHandler(onSuccess)
            .withFailureHandler(showError).dummyFunc();
      });

      function printTest() {
        console.log('test');
      }

      function showError() {
       console.log('error')
      }

      function onSuccess() {
        console.log('success')
      }
    </script>
  </body>
</html>

appsscript.json

{
  "timeZone": "Europe/Paris",
  "dependencies": {
  },
  "exceptionLogging": "STACKDRIVER",
  "runtimeVersion": "V8",
  "oauthScopes": ["https://www.googleapis.com/auth/script.external_request",
                  "https://www.googleapis.com/auth/script.container.ui",
                  "https://www.googleapis.com/auth/documents",
                  "https://www.googleapis.com/auth/drive"]
}

如果我在编辑器中并运行dummyFunc,则可以在“日志”中看到文档的ID。但是,如果我测试自己的插件,我会不断从客户端函数showError中获取“错误”。 我在做什么错了?

1 个答案:

答案 0 :(得分:0)

我能够使此工作简单地禁用新的V8运行时。 真的很奇怪,最重要的是,完全没有记录。

相关问题