Как получить доступ к переменным шаблона в разделе скриптов моего HTML файла в Google Apps Script? - PullRequest
0 голосов
/ 05 февраля 2020

Мне нужно получить доступ к шаблонным переменным в разделе скрипта моего HTML файла. В частности, мне нужно использовать content.price.

Я могу получить доступ к content.price очень хорошо в шаблонной части тела моего HTML.

Это ведет себя как ожидалось.
<div class="container">
  Price: $<?= content.price ?></td>
  <div id="paypal-button-container"></div>
</div>

Но в разделе сценариев попытка доступа к content.price, похоже, вызывает исключение.

Это приводит к сбою при визуализации кнопок. (Это происходит молча.)
amount: {
  value: content.price //  '0.01' // Using content.price throws an error
}

Что я делаю не так?

Code.gs
var template = HtmlService.createTemplateFromFile(HTML_FILENAME);
template.content = values;
var htmlOutput = template.evaluate();
index. html
<!DOCTYPE html>
  <!-- source: https://developer.paypal.com/docs/checkout/integrate/ -->
  <html>
    <body>
      <div class="container">
        Price: $<?= content.price ?></td>
        <div id="paypal-button-container"></div>
      </div>
      <script
        src="https://www.paypal.com/sdk/js?client-id=SB_CLIENT_ID">
      </script> 
      <script>
        // This function displays Smart Payment Buttons on your web page.
        paypal.Buttons({
          createOrder: function(data, actions) {
            // This function sets up the details of the transaction, including the amount and line item details.
            return actions.order.create({
              purchase_units: [{
                amount: {
                  value: content.price //  '0.01' // Using content.price throws an error
                }
              }]
            });
          },
        }).render('#paypal-button-container');
      </script>
    </body>
  </html>

1 Ответ

1 голос
/ 05 февраля 2020

В разделе скриптов вам также понадобятся теги шаблонов.

Примерно так:

amount: {
  value: <?!= content.price ?>
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...