Google Apps Script - SetText для отображения элементов массива в списке или отдельных строках - PullRequest
0 голосов
/ 23 января 2020

У меня есть следующий рабочий код

function notifyNo(array1,array2,array3) {
  return CardService
     .newCardBuilder()
     .setHeader(
         CardService.newCardHeader()
             .setTitle('Draft Validation Check')
             .setSubtitle("Please validate the below recipients before sending out this message")
             .setImageStyle(CardService.ImageStyle.SQUARE)
             .setImageUrl('https://i.imgur.com/4uNXq15.png')
     )  
     .addSection(
          CardService.newCardSection()
              .setHeader('<b><font color="#FF0000">High-Risk Domains</font></b>')
              .addWidget(
                CardService.newTextParagraph().setText('<font color="#FF0000">'+array3.toString()+'</font>'))
     )
     .addSection(
          CardService.newCardSection()
              .setHeader('<b><font color="#CCCC00">Low-Risk Domains</font></b>')
              .addWidget(CardService.newTextParagraph().setText('<font color="#CCCC00">'+array2.toString()+'</font>'))
     )
     .addSection(
          CardService.newCardSection()
              .setHeader('<b><font color="#006400">Safe Domains</font></b>')
              .addWidget(CardService.newTextParagraph().setText('<font color="#006400">'+array1.toString()+'</font>'))
     )
     .build();
}

, который выдает следующий вывод:

enter image description here

Я хотел бы:

  • Создайте элементы, представленные в списке, а не через запятую
  • В любом случае я могу контролировать цвет фона для трех отдельных разделов

1 Ответ

3 голосов
/ 24 января 2020

Вам нужно будет go просмотреть каждое значение в каждом массиве и создать виджет абзаца для каждого.

function notifyNo(array1, array2, array3)
{
    var highRiskDomains = CardService.newCardSection().setHeader('<b><font color="#FF0000">High-Risk Domains</font></b>');
    array3.forEach(function(value)
    {
        highRiskDomains.addWidget(CardService.newTextParagraph().setText('<font color="#FF0000">' + value + '</font>'));
    });

    var lowRiskDomains = CardService.newCardSection().setHeader('<b><font color="#CCCC00">Low-Risk Domains</font></b>');
    array2.forEach(function(value)
    {
        lowRiskDomains.addWidget(CardService.newTextParagraph().setText('<font color="#CCCC00">' + value + '</font>'));
    });

    var safeDomains = CardService.newCardSection().setHeader('<b><font color="#006400">Safe Domains</font></b>');
    array1.forEach(function(value)
    {
        safeDomains.addWidget(CardService.newTextParagraph().setText('<font color="#006400">' + value + '</font>'));
    });

    return CardService
        .newCardBuilder()
        .setHeader(
            CardService.newCardHeader()
                .setTitle('Draft Validation Check')
                .setSubtitle("Please validate the below recipients before sending out this message")
                .setImageStyle(CardService.ImageStyle.SQUARE)
                .setImageUrl('https://i.imgur.com/4uNXq15.png')
        )
        .addSection(highRiskDomains)
        .addSection(lowRiskDomains)
        .addSection(safeDomains)
        .build();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...