Есть ли способ сослаться на сладкое оповещение из скрипта приложений Google?

Я связываю библиотеку с атрибутом src и использую функцию для ее вызова, и она не работает

GS:

function doGet(e) { 
  var params = JSON.stringify(e.parameters) 
  var params2 =JSON.parse(params) 
  cache.put("name", params2.name)
  cache.put("DBID", params2.DBID)
  return HtmlService.createTemplateFromFile("test").evaluate()
}

function include(f1){ 
  return HtmlService.createHtmlOutputFromFile(f1).getContent();
} 

HTML:

<head>
  <title>Email form test</title>
  <?!= include("CSS") ?>
</head>
<body>   
   <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/sweetalert2.all.js"></script>
   <?!= include('Javascript') ?>
   <button type="button" name="Submit" onclick="javascript:t1();"id="sub1"class="btn btn-white btn-animation-1">Submit</button>

Вызов библиотеки (после ее инициализации выше):

<script>
function t1(){
  Swal.fire('Any fool can use a computer');
}
</script>

ожидаемый результат должен быть таким: я нажимаю кнопку, и «любой дурак может использовать компьютер» должен появиться в окне сладкого предупреждения 2.


person Raphael Castro    schedule 24.09.2019    source источник
comment
Вы используете это в веб-приложении Apps Script? Какой у вас код .gs для оценки HTML?   -  person Rafa Guillermo    schedule 24.09.2019
comment
Спасибо. Пожалуйста, обновите свой вопрос своим кодом, так как его трудно читать и понимать из комментариев.   -  person Rafa Guillermo    schedule 24.09.2019


Ответы (1)


Вам не нужно импортировать и оценивать библиотеку Sweetalert в скрипте приложений — вы можете включить ее в свой HTML-файл, как обычно, и вернуть вывод HTML из файла doGet():

код.gs:

function doGet(e) { 
  // your code here
  return HtmlService.createHtmlOutputFromFile("index");
}

и index.html:

<!DOCTYPE html>
<html>
  <head>
    <title>Email form test</title>
  </head>
  <body>   
   <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/sweetalert2.all.js"></script>

   <button type="button" name="Submit" onclick="t1();"id="sub1"class="btn btn-white btn-animation-1">Submit</button>
    <script>
      function t1(){
        Swal.fire('Any fool can use a computer');
      }
    </script>
  </body>
</html>
person Rafa Guillermo    schedule 25.09.2019
comment
Я оцениваю шаблон, потому что использую отдельные листы для CSS и Javascript, я пытался дать ему собственную функцию включения, но все еще не работает. совместимо ли сладкое оповещение со скриптом приложений Google? - person Raphael Castro; 25.09.2019
comment
Не весь ECMAScript 6 включен в скрипт Google Apps, и проблема с использованием Sweet Alert непосредственно внутри Apps Script заключается в отсутствии определения WeakMap, которое было определено в ECMAScript 6th Edition и используется Sweet Alert. По крайней мере, на данный момент его необходимо включить в файл JavaScript и оценить на стороне клиента. - person Rafa Guillermo; 25.09.2019
comment
как я это сделал? - person Raphael Castro; 25.09.2019
comment
Это то, что я сделал в своем ответе: скриптлеты не работают в шаблоне, поскольку они выполняются на стороне сервера, поэтому их необходимо оценивать с помощью createHtmlOutputFromFile. - person Rafa Guillermo; 26.09.2019
comment
извини, чувак, я новичок, я не понял, но теперь я понимаю, и это работает, лол - person Raphael Castro; 27.09.2019
comment
@RaphaelCastro Не беспокойтесь! Рад слышать, что все работает. Тоже имя, кстати ;) - person Rafa Guillermo; 27.09.2019