Comments 6
Я это и имел ввиду, когда говорил про регистрацию собственных типов полей. Ну то есть что-то вроде
Постараюсь добавить, как время появится.
import Form from "mgr-form-react";
class MyComplexFormElement extends React.Component {...}
...
Form.registerElement('complexElement', MyComplexFormElement);
const testComponent = () => {
const controls = [{
element: 'complexElement',
... // props to be passed to the MyComplexFormElement
}]
return <Form controls={controls} />;
}
Постараюсь добавить, как время появится.
+1
Хорошее решение, что-то похожее я сейчас делаю. Только формы у меня сложнее.
1. Аналог cb работает иначе: он не вытягивает из всех компонент data, он вызывает компонентный метод getNewValue, а тот в свою очередь возвращает json вида «filedName»:[oldValue, newValue], если поле изменилось или "". Полезно при редактировании полей БД.
2. Изменение поля может потребовать пересчета других полей. В компоненте может быть метод recalcAll: он через redux.dispath отправляет событие всем компонентам, у которых прописан subcsribe, а они сами решают, надо ли им меняться.
3. У меня нет класса типа Form, экранная форма разбита на панели разных типов. Отправка команд от кнопок наверх через dispath. Описание всего этого хозяйства считывается с сервера в json.
Хорошо бы объединить велосипеды.
1. Аналог cb работает иначе: он не вытягивает из всех компонент data, он вызывает компонентный метод getNewValue, а тот в свою очередь возвращает json вида «filedName»:[oldValue, newValue], если поле изменилось или "". Полезно при редактировании полей БД.
2. Изменение поля может потребовать пересчета других полей. В компоненте может быть метод recalcAll: он через redux.dispath отправляет событие всем компонентам, у которых прописан subcsribe, а они сами решают, надо ли им меняться.
3. У меня нет класса типа Form, экранная форма разбита на панели разных типов. Отправка команд от кнопок наверх через dispath. Описание всего этого хозяйства считывается с сервера в json.
Хорошо бы объединить велосипеды.
0
Sign up to leave a comment.
mgr-forms-react: Простой компонент для простейших форм