# Reflect.1. Связываем представление — Mercury LMS > Контракт `@fiberfx/reflect` 4.1.1; Hypergraph и Hyperscript 4.1.1. ## Применение `reflect({view, bind})` связывает обычный компонент Hyperscript или адаптер `fromTag("input")`. `createReflect(view)(bind, options?)` фиксирует представление. Модель и фабрики объявлять вне рендера. ## Контракт Хранилища дают значения. События, эффекты и функции из bind привязываются к области. Входные свойства имеют приоритет; цепочек обработчиков и объединения классов нет. Input onInput получает Event, Checkbox onChange — boolean. Аргументы преобразовывать явно; event не является обработчиком нативного ввода. ## Практика [Эксперимент](/examples/reflect-lab/index.html?part=binding&lang=ru): изменить черновик имени и применить; затем отправить пустое имя — фильтр sample модели должен сохранить применённое значение. Независимо изменить счётчик, разобрать count:99 как переопределение отображения, сбросить и повторить. Ошибочную привязку проверяет TypeScript; это не обещание проверки данных во время выполнения. ## Основание `fiberfx/reflect/src/reflect.ts`, `src/from-tag.ts`, `README.md`; ревизия 20dad1543358ab293c61b004a1f5f2577915798b, npm 4.1.1. ## Навигация - [HTML](/ru/reflect/binding) - [Reflect](/ru/reflect/llms.txt) - [Index](/ru/llms.txt) - [Карта сайта](/sitemap.xml) - [Все английские версии для агентов](/llms-full.txt)