inputForm
await crafttechApi.inputForm(obj);
Описание
Заголовок раздела «Описание»Выводит на экран окно с полями ввода, лейблами и кнопками с возможностью кастомизации; при нажатии на выбранную кнопку запускает функцию или макрос.
Параметры
Заголовок раздела «Параметры»- obj (object) — объект в входными данными:
- title (string) — заголовок окна;
- input (object[]) — массив объектов с информацией о каждом поле ввода:
- label (string) — лейбл поля ввода;
- value (string) — дефолтное значение поля ввода.
- actions (object[]) — массив объектов с информацией о каждой исполняемой кнопке:
- btnCap (string) — текст кнопки, который будет виден пользователю;
- btnVal (string) — значение, которое хранит кнопка;
- callback (function) — функция (например, макрос), который выполняется при нажатии на эту кнопку.
Возвращает
Заголовок раздела «Возвращает»- result (string[]) — массив значений, переданных пользователем в полях ввода.
Код ниже запустит окно, которое будет иметь заголовок "Вставьте значение"
, поле ввода 1 без лейбла, но с дефолтным значением "value1"
, поле ввода 2 с лейблом, но без дефолтного значения, а также кнопки “Принять” и “Отклонить”.
При нажатии на кнопку "Принять"
запустится функция doOne
, которая выведет текст "Предложение принято!"
в консоль. При нажатии на кнопку “Отклонить” запустится функция doTwo
, которая выведет текст "Предложение отклонено!"
в консоль. Вне зависимости от нажатой кнопки метод вернёт массив значений, переданных пользователем в полях ввода в переменную res
.
function doOne() { console.log("Предложение принято!");}
function doTwo() { console.log("Предложение отклонено!");}
const obj = { title: "Вставьте значение", input: [ { label: undefined, value: "value1" }, { label: "label2", value: "" }, ], actions: [ { btnCap: "Принять", btnVal: "yes", callback: doOne }, { btnCap: "Отклонить", btnVal: "no", callback: doTwo }, ],};
const res = await crafttechApi.inputForm(obj);console.log(res);
{width=“392” height=“238”}
Обратная связь: support@crafttech.ru