Поделиться через


Функции, внедренные из библиотеки Создания текста

ОБЛАСТЬ ПРИМЕНЕНИЯ: ПАКЕТ SDK версии 4

В этой статье приводятся сведения о внедрении функций из библиотеки Создания текста (LG).

ActivityAttachment

Возвращает activityAttachment, созданный на основе объекта и типа.

ActivityAttachment(<collection-of-objects>)
Параметр Обязательное поле Тип Описание
<content> Да объект Объект, содержащий информацию о вложении.
<type> Да строка Строка, представляющая тип вложения.
Возвращаемое значение Тип Описание
<activityAttachment> объект activityAttachment, сформированный из входных данных.

Пример:

В этом примере коллекция объектов преобразуется в activityAttachment.

Предположим, что у вас есть следующий шаблон:

# externalHeroCardActivity(type, title, value)
[Activity
    attachments = ${ActivityAttachment(json(fromFile('.\\herocard.json')), 'herocard')}
]

И вот такой herocard.json:

{
  "title": "titleContent",
  "text": "textContent",
  "Buttons": [
    {
      "type": "imBack",
      "Title": "titleContent",
      "Value": "textContent",
      "Text": "textContent"
    }
  ],
  "tap": {
    "type": "${type}",
    "title": "${title}",
    "text": "${title}",
    "value": "${value}"
  }
}

Теперь вы вызываете externalHeroCardActivity() в качестве функции:

externalHeroCardActivity('signin', 'Signin Button', 'http://login.microsoft.com')

И она возвращает herocard:

{
    "lgType" = "attachment",
    "contenttype" = "herocard",
    "content" = {
        "title": "titleContent",
        "text": "textContent",
        "Buttons": [
            {
            "type": "imBack",
            "Title": "titleContent",
            "Value": "textContent",
            "Text": "textContent"
            }
        ],
        "tap": {
            "type": "signin",
            "title": "Signin Button",
            "text": "Signin Button",
            "value": "http://login.microsoft.com"
        }
    }
}

expandText

Оцените обычный текст в объекте и верните развернутые текстовые данные.

expandText(<object>)
Параметр Обязательное поле Тип Описание
<object> Да объект Объект с текстом для расширения.
Возвращаемое значение Тип Описание
<evaluated-result> объект Развернутые текстовые данные.

Пример

В этом примере вычисляется обычный текст в объекте JSON и возвращается развернутый текстовый результат.

Предположим, что у вас есть следующий объект:

{
  "@answer": "hello ${user.name}",
  "user": {
    "name": "vivian"
  }
}

Вызов expandText(@answer) приведет к тому, что объект hello vivian.

JSON

Возвращает вычисленный результат для заданного имени шаблона и области.

template(<templateName>, '<param1>', '<param2>', ...)
Параметр Обязательное поле Тип Описание
<templateName> Да строка Строка, представляющая имя шаблона.
<param1,param2><>, ... Да Объект Параметры, которые передаются в сборку.
Возвращаемое значение Тип Описание
<evaluated-result> объект Результат, полученный путем оценки шаблона как функции.

Пример

В этом примере вычисляется результат вызова шаблона в качестве функции.

Предположим, что у вас есть следующий шаблон:

# welcome(userName)
- Hi ${userName}
- Hello ${userName}
- Hey ${userName}

Вызов template("welcome", "DL") приведет к получению одного из следующих значений:

  • Hi DL
  • Hello DL
  • Hey DL

fromFile

Возвращает результат оценки выражения в указанном файле.

fromFile(<filePath>)
Параметр Обязательное поле Тип Описание
<filePath> Да строка Относительный или абсолютный путь к файлу, который содержит выражения.
Возвращаемое значение Тип Description
<result> строка Строковое представление результата оценки выражения.

Пример

В этом примере результат вычисляется на основе указанного файла.

Предположим, у вас есть файл с именем /home/user/test.txt. В этом файле размещено следующее содержимое:

`you have ${add(1,2)} alarms`

fromFile('/home/user/test.txt')

Функция fromFile() вычислит выражение и заменит исходное выражение результатом этого вычисления.

Вызов fromFile('/home/user/test.txt') возвращает строку you have 3 alarms.

isTemplate

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

isTemplate(<templateName>)
Параметр Обязательное поле Тип Описание
<templateName> Да Строка Имя шаблона для проверки.
Возвращаемое значение Тип Description
<result> Логическое значение Указывает, включено ли указанное имя шаблона в средство оценки.

Пример

В этом примере функция isTemplate() применяется для проверки того, включено ли указанное имя шаблона в средство оценки. Предположим, у вас есть три таких шаблона:

# welcome
- hi

# show-alarms
- 7:am and 8:pm

# add-to-do
- you add a task at 7:pm

Вызов isTemplate("welcome") будет оцениваться true. Вызов isTemplate("delete-to-do") будет оцениваться false.

Дополнительная информация