ym88659208ym87991671
Работа с модулями для смартапов | Документация для разработчиков

Работа с модулями в Code

Обновлено 15 декабря 2023

В конфигурационном файле chatbot.yaml в секции dependencies определяется список зависимостей проекта.

module — одна из возможных зависимостей. Это готовые модули, на которые вы можете ссылаться и переиспользовать контент из них: файлы сценариев, JS-библиотек, справочников.

Cинтаксис

Указываются модули в зависимостях dependencies конфигурационного файла chatbot.yaml.

Параметры module:

ПолеВозможные
значения
Описание
name<name>Имя модуля, которое будет использоваться при подключении файлов в директиве require.
typemoduleПапка репозитория относительно пути <projectFolder>, которая содержит модуль.

Работа с module

Рассмотрим пример подключения модуля. Зададим в конфигурационном файле имя и папку модуля в dependencies:

name: games-test

entryPoint: main.sc

dependencies:
- name: common
type: module

Далее вызовем в сценарии файлы из модуля при помощи require:

require: text/text.sc
module = common

require: number/number.sc
module = common

require: common.js
module = common

require: city/city.sc
module = common

require: city/cities-ru.csv
name = Cities
var = $Cities
module = common

Теперь контент из вызванных файлов модуля можно использовать в сценарии проекта. Например, сценарий main.sc:

require: number/number.sc
module = common

require: common.js
module = common

require: city/city.sc
module = common

require: city/cities-ru.csv
name = Cities
var = $Cities
module = common

theme: /

state: Text
q: $Text
a: Вы сказали: {{ $parseTree._Text }}

state: NumberPattern
q: * $Number *
a: Число: {{$parseTree._Number}}

state: CityPattern
q: * $City *
a: Город: {{$parseTree._City.name}}

state: NoMatch
q: *
a: Извините, я вас не понимаю.

Зависимости скачиваются в папку modules при деплое через веб-интерфейс.

ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.