UNPKG

formkit-react

Version:

FormKit is a React library for building forms with ease.

26 lines (25 loc) 939 B
import React, { useEffect, useRef } from 'react'; export default function FormKitController(_a) { var name = _a.name, render = _a.render; var _b = React.useState({}), value = _b[0], setValue = _b[1]; var ref = useRef(null); useEffect(function () { var element = ref.current; if (!element) return; var handleSetValue = function (event) { var value = event.detail.value; setValue(value); }; element.addEventListener('formkit:setValue', handleSetValue); return function () { element.removeEventListener('formkit:setValue', handleSetValue); }; }, []); return (React.createElement("div", { "data-formkit-controller": true, "data-name": name, "data-value": JSON.stringify(value), ref: ref }, render({ value: value, onChange: function (newValue) { setValue(newValue); } }))); }