fixed alex error

This commit is contained in:
IDONTSUDO 2024-10-14 11:10:26 +03:00
parent 7693377ad1
commit 1ec2a3ff7a
2 changed files with 13 additions and 6 deletions

View file

@ -2,7 +2,7 @@ import * as React from "react";
import { FormViewModel, InputBuilderViewModel, InputType } from "./form_view_model";
import { observer } from "mobx-react-lite";
import { FormBuilderStore } from "./form_builder_store";
import { CoreSelect } from "../select/select";
import { CoreSelect } from "../select/select";
import { CoreInput } from "../input/input";
import { Icon } from "../icons/icons";
import { CoreText, CoreTextType } from "../text/text";
@ -38,7 +38,7 @@ export const FormBuilder = observer((props: IFormBuilder) => {
<>Error</>
) : (
<div>
{store.formViewModel?.inputs?.map((element,index) => {
{store.formViewModel?.inputs?.map((element, index) => {
if (element.type?.isEqual(InputType.ENUM)) {
const values = element.values as string[];
return (
@ -104,6 +104,7 @@ export const FormBuilder = observer((props: IFormBuilder) => {
return (
<div>
<CoreInput
isFormBuilder={true}
style={{ margin: 5 }}
onChange={(e) => {
store.changeTotalSubValue(element.id, subIndex, e);
@ -136,6 +137,8 @@ export const FormBuilder = observer((props: IFormBuilder) => {
return (
<div>
<CoreInput
isFormBuilder={true}
validation={element.type.isEqual(InputType.NUMBER) ? (el) => Number().isValid(el) : undefined}
onChange={(e) => {
store.changeTotalValue(element.id, e);

View file

@ -16,6 +16,7 @@ interface IInputProps extends IStyle {
type?: CoreInputType;
trim?: boolean;
styleContentEditable?: React.CSSProperties;
isFormBuilder?: boolean;
}
export const CoreInput = (props: IInputProps) => {
@ -29,12 +30,15 @@ export const CoreInput = (props: IInputProps) => {
}
}, [ref, value, isAppendInnerText, setAppendInnerText, props]);
React.useEffect(() => {
if (ref.current && props.value) {
ref.current.innerText = value;
setValue(props.value);
console.log(props.value);
if (props.isFormBuilder === undefined) {
if (ref.current && props.value) {
ref.current.innerText = value;
setValue(props.value);
console.log(props.value);
}
}
}, [props.value]);
const isSmall = props.type !== undefined && props.type.isEqual(CoreInputType.small);
return (
<div