1

TextInput(source="values") があり、そこからボタンで読み取り、その値で文字列値を変更したい

私のコード例は次のとおりです。

class DataTypeCreate extends Component {
    state = {
        values: ''
    }

    addClickedHandler = (x) => {
        let value = this.props.values;
        this.setState((prevValue) => {
            return { values: prevValue.values + ", " + this.values}
        });
        console.log(this.state.values);
    }

    render() {
        return(
            <Create {...this.props}>
                <SimpleForm redirect="list"
                    validate={values => {
                        const errors = {};

                        ["id", "type"].forEach(field => {
                            if (!values[field]) {
                                errors[field] = ["Required field"];
                            }
                        });

                        return errors;
                    }}>
                    <TextInput source="id" label="Name" />
                    <SelectInput
                        source="type"
                        choices={[
                            { name: "String", id: "string" },
                            { name: "Enum", id: "enum" },
                            { name: "Decimal", id: "decimal" }
                        ]}
                    />
                    <TextInput source="values" />
                    <Button clicked={this.addClickedHandler} name="Value"></Button>
                    {/* <ReferenceArrayInput reference="values" source="values" label="Values">
                        <SelectArrayInput>
                            <ChipField source="name" />
                        </SelectArrayInput>
                    </ReferenceArrayInput> */}
                </SimpleForm>
            </Create>
        )
    }
}

export default DataTypeCreate;

反応管理者で可能ですか? 手伝って頂けますか?ありがとうございました

4

0 に答える 0