что за тегзначит в гугл скриптах? - PullRequest
1 голос
/ 12 октября 2019

Является ли тег <?= ?> специфическим синтаксисом сценариев Google или он может работать на чистой странице html / javascript? Есть ли какое-нибудь описание для этого?

Это похоже на <?=$a; ?> тег PHP, но я сомневался, когда увидел это: <? var foo = "test"; ?>.

1 Ответ

2 голосов
/ 12 октября 2019

Официально эти биты кода упоминаются как «скриптлеты» в документации GAS. Это синтаксис Apps Script для рендеринга HTML на стороне сервера.

Перед отправкой содержимого HTML в ваш браузер для отрисовки на стороне клиента все сценарии между и выполняются и их вывод добавляется в шаблон. Это также может быть просто текст между этими тегами вместо сценариев. Скриплеты выполняются при преобразовании HtmlTemplate в объект HtmlOutput в GAS:

 //HtmlTemplate instance
 var htmlTemplate = HtmlService.createTemplate("<a href='<?!= www.google.com ?>'>Google</a>"); 

 //HtmlOutputInstance - calling evaluate() fires off the scriptlets and 
 //creates HTML output that is ready to be sent to the client. 
 var htmlOutput = htmlTemplate.evaluate(); 

 //Logs <a href='www.google.com'> Google </a>
 Logger.log(htmlOutput.getContent());

Краткий ответ - нет. Вы не можете запускать скриптлеты прямо в вашем браузере - они выполняются на серверах Google. Вы правы, что существует много шаблонизаторов, которые выполняют одну и ту же функцию, но реализованы по-разному.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...