google.script.run не работает, когда другие пользователи оставляют комментарии - PullRequest
0 голосов
/ 10 апреля 2020

Функции, перечисленные ниже, работают правильно, когда я отправляю контент обратно на сервер через google.script.run, однако он не работает для моих коллег в том же файле. Эти коллеги находятся в одном домене и имеют доступ к редактированию электронной таблицы и могут загрузить первую часть функции, черновой набросок, из созданного мной шаблона (html, показанный ниже).

Наш опыт, кажется, расходится, когда они нажимают кнопку «Отправить» - их клиент должен звонить google.script.run.userSubmissions. Однако в представлении внутренних исполнений я не получаю никаких указаний на то, что их клиентский сценарий правильно вызывает функцию userSubmission - как показано ниже, я ожидаю, что она будет отображаться вверху, позиция 3 - это когда я выполняю то же самое действие, и мой клиент назвал google.script.run, как и ожидалось. Кроме того, я не вижу никаких сообщений об ошибках любого типа.

Executions List showing the function was not called when a different user hit the submit button

Полный html, представленный в плавающем модальном окне:

  • Примечание: у меня в вызове функции печатаются 3 скриптлета, и я убедился, что они работают правильно в моих коллегах-клиентах
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Provide Comment</title>
  </head>
  <body>
    <h3>Provide comment for content item #</h3>
    <div>
      <span>Title</span>
      <p>Content</p>
    </div>
    <div>
      <label style="display: block;" for="commentInput">Comment:</label>
      <textarea
        id="userComment"
        style="display: block; margin: 1em 0 1em 0; width: 99%;"
        name="commentInput"
        rows="10"
        placeholder="Please provide your comment here..."
      ></textarea>
      <button style="float: right;" onclick="submitComment()">
        Submit
      </button>
    </div>
    <script>
      function submitComment() {
        let comment = document.getElementById("userComment").value;

        google.script.run
          .withSuccessHandler(closeModal)
          .withFailureHandler(onFailure)
          .userSubmission(
            comment,
            "comment",
            parseInt(<?= contentIDColumn; ?>),
            parseInt(<?= eventContentID; ?>),
            parseInt(<?= statusColumn; ?>)
          );

        function closeModal() {
          google.script.host.close();
        }
        function onFailure(error) {
          console.log(error);
          let message = "There was an error processing that form. Perhaps try again?"
          document.getElementById("errorMessage").textContent = message;
        }
      }
    </script>
  </body>
</html>
...