Для прозрачной работы с данными на клиенте, и более эффективной
разработки пользовательских скриптов Муха позволяет подключить простое API для
Java Script.
API работает независимо от расположения сайта, например, данные загружаются
как при открытии страниц по сети, так и локально (по протоколу file://).Для его подключения нужно:
В шаблоне, как можно ближе к началу HTML, разместить тег {{ jsapi }} (если его там нет)
При подключенном API для скриптов становится доступен объект window.Mukha. Ниже список его полей.
Доступные поля
permalink
Ссылка от корня (root-relative) на текущую страницу. Эта ссылка
не всегда может быть однозначно получена из URL, поэтому
лучше использовать API.
relative(
from , to )
Возвращает относительную ссылку со страницы, указанной первым параметром
на страницу, указанную вторым.
Параметр
Тип
Что это
from
string
Ссылка от корня сайта на страницу, с которой должна быть ссылка
to
string
Ссылка на страницу, на которую надо сослаться.
relTo(
to )
Преобразует ссылку от корня сайта в относительную, с текущей страницы
Параметр
Тип
Что это
to
string
Каноническая ссылка на страницу
getData(
dataset )
Запрашивает сохраненный для JS API глобальный датасет по имени. Возвращает
Promise, которые разрешается запрошенным объектом данных.
Параметр
Тип
Что это
dataset
string
Имя датасета
getLocalData(
dataset , path )
Запрашивает локальный датасет. Возвращает
Promise, которые разрешается запрошенным объектом данных.
Параметр
Тип
Что это
dataset
string
Имя локального датасета
path
string
Опционально: путь до страницы. Позволяет загрузить локальный датасет страницы, отличной от текущей
attachScript(
url )
Присоединяет скрипт по указанному URL, возвращает Promise, который
разрешается, если скрипт был удачно загружен.
Параметр
Тип
Что это
url
string
URL скрипта для загрузки.
---
title: Java Script API
excerpt: API для пользовательских скриптов
doc: jsapi_ru
---
Для прозрачной работы с данными на клиенте, и более эффективной
разработки пользовательских скриптов Муха позволяет подключить простое API для
Java Script.
---
API работает независимо от расположения сайта, например, данные загружаются
как при открытии страниц по сети, так и локально (по протоколу file://).Для его подключения нужно:
- В шаблоне, _как можно ближе к началу HTML_, разместить тег {% raw %}`{{ jsapi }}`{% endraw %} (если его там нет)
- В [конфигурационном файле](/+doc:config_file_ru) добавить опцию `js_api: true`
При подключенном API для скриптов становится доступен объект `window.Mukha`. Ниже список его полей.
### Доступные поля
{% for unit in data.datasets.api.jsapi %}
<div class="mb-6">
<strong>
{{ unit.field }}{% if unit.isFunction %}(
{% if unit.params %}
{% for P in unit.params %}
{{ P[0] }}{% if not loop.last %} , {% endif %}
{% endfor %}
{% endif %} )
{% endif %}
</strong>
<div>{{ unit.description}} </div>
{% if unit.params %}
<table>
<thead>
<tr>
<td>Параметр</td>
<td>Тип</td>
<td>Что это</td>
</tr>
</thead>
<tbody>
{% for row in unit.params %}
<tr>
<td><code>{{row[0]}}</code></td>
<td>{{row[1]}}</td>
<td>{{row[2]}}</td>
</tr>
{% endfor %}
</tbody></table>
{% endif %}