Гибкая форма (fform) — конструктор форм с минимальной избыточностью кода, при этом максимально гибкий и расширяемый.
Используемый стек технологий: Реагировать (т.16), Редукс (необязательный), JSONсхема , Машинопись .
Основная идея — максимально повторно использовать схемы, компоненты и функции.
Особенности
- 98кб минимизированный, 28кб сжатый
- Конструктор форм для быстрого старта
- Объединение и повторное использование фигур или их частей при использовании свойств.
oneOf
,allOf
,$ref
- Проверка синхронизации/асинхронности/JSON/отправки
- Нативная поддержка redux, но можно использовать любое другое хранилище (в том числе внутреннее)
- Полная поддержка массива (добавление/удаление/перемещение)
- Встроенный просмотрщик
- Полностью настраиваемые и добавляемые элементы формы.
- Поддержка реформирования безопасности
- Нет зависимостей (реагировать как внешний)
- JSONSchema (проект v4, с дополнительными свойствами), содержащая только данные JSON и описывающая поля формы и расположение таких объектов, как кнопки, ссылки, вкладки и т. д.
- объект elements, содержащий компоненты React(v16), функции, часто используемые части компонентов и, в принципе, любой другой код js или JSON, на который можно ссылаться как из любой части объекта elements, так и из расширенных полей объекта JSONSchema. По своей сути элементы — это хранилище кирпичиков кода, из которых затем собирается вся форма, причем степень элементарности этих кирпичиков определяется самим разработчиком.
- Расширение схем с использованием свойств $ref и allOf, как описано в разделе Спецификации схемы JSON .
- Расширение объекта elements по аналогичному принципу, но с другим синтаксисом (чтобы визуально различать, где расширяется схема, а где элементы).
- Обработчики данных и событий используют конвейер (каналы) js-функций почти так же, как это сделано в Linux. Выход одной функции подается на вход следующей, что (при правильном разделении обязанностей между функциями) позволяет повторно использовать существующие функции, а новые добавлять только в том случае, если требуется еще не реализованный функционал.
Ссылки
Теги: #github #JavaScript #react.js #typescript #react #jsonschema
Вместе с данным постом часто просматривают:
-
Электронные Больницы, Виртуальные Врачи
19 Oct, 24 -
Субстики №109
19 Oct, 24 -
Сборка Собственного Компьютера, Часть 1.
19 Oct, 24 -
Душ Для Любителей Rss
19 Oct, 24 -
Скайп 3.0.0.216
19 Oct, 24