Данные, добавляемые на сайт или полученные в результате обработкт шаблонов, можно сохранить для использования в Java Script на сайте. И это удобнее, чем сохранять их отдельно, потому что:
С точки зрения API существуют два типа данных — глобальные и локальные.
Они сохранаяются по-разному.
Глобальные данные сгенерированы из файлов в
директории data. У них есть однозначное имя, эти данные
доступны при генерации любой страницы.
Локальные данные — это данные, которые создаются в процессе генерации. Они, как правило, связаны с определенной страницей и могут не иметь имени.
Для пробороса глобальных данных в JS используется действие save2js в файле конфигурации данных.
- task: save2js
dataset: your.dataset.name
В клиентском скрипте нужно будет обратиться к функции API getData():
window.Mukha.getData("your.dataset.name")
.then(d=>...ваш код... )
.catch(e=>console.error(e))
Для проброса локальных данных служит функция шаблона, ее можно вызвать как в шаблонах, так и в контенте.
В примере мы сохраняем поле local_data, в котором хранятся данные страниц, сгенерированных из датасетов.
В отличие от глобальных данных, нам нужно задать произвольное имя, под которым данные сохранятся.
{{ saveData("myData" , page.local_data) }}
В клиентском скрипте:
window.Mykha.getLocalData("myData")
.then(d=>...ваш код...)
.catch(e=>console.error(e))
Функция getLocalData() вернет Promise с данными, которые были сохранены для текущей страницы. В функцию можно
вторым параметром передать адрес страницы, тогда мы получим данные, сохраненные с указанным именем,
на указанной странице (если они там есть).