如果我在React中单击RadioButtonGroupInput标签,如何隐藏其他标签?

hyun_sato

当我单击React中的RadioButton时,我想隐藏其他标签。单击RadioButtonGroupInput时,我要隐藏ReferenceInput标签。如果你知道如何,请发表评论..

const UserEdit = ({ classes, ...props }) => (
    <Edit {...props}>
        <SimpleForm>
            <TextInput source="username" validate={required()}/>
            <TextInput source="email" validate={[required(),email()]}/>
            <TextInput source="phoneNumber" validate={[required(),minLength(10),number()]}/>
            <RadioButtonGroupInput label="Type"
                                   source="userType"
                                   choices={types}
                                   optionText="id"
                                   validate={required()}
                                   onChange={(event,id) => (id === "COMPANY") ? console.log(id) : console.log(event)}/>
            <ReferenceInput label="Company" source="company.id" reference="companies">
                <SelectInput optionText="name" />
            </ReferenceInput>
        </SimpleForm>
    </Edit>
);
很酷的家伙

您可以集成useState()挂钩以与协调RadioButtonGroupInput它使我们可以定义一个checked值和一个setChecked专门用于更新函数checked

onChange()事件监听器被触发,我们将切换checked值。然后我们习惯checked了条件渲染ReferenceInput

import React, { useState } from "react

const UserEdit = ({ classes, ...props }) => (

    //creates a state-value and a state-updater function. Set default as false.
    const [ checked, setChecked ] = useState(false)

    <Edit {...props}>
        <SimpleForm>
            <TextInput source="username" validate={required()}/>
            <TextInput source="email" validate={[required(),email()]}/>
            <TextInput source="phoneNumber" validate={[required(),minLength(10),number()]}/>
            <RadioButtonGroupInput 
                 label="Type"
                 source="userType"
                 choices={types}
                 optionText="id"
                 validate={required()}
                 onChange={() => setChecked(!checked)}/> //set to opposite of current-value

            //if not checked, then we will display ReferenceInput, if checked, hide.
            { !checked && (
                <ReferenceInput label="Company" source="company.id" reference="companies">
                    <SelectInput optionText="name" />
                </ReferenceInput>

            )}
        </SimpleForm>
    </Edit>
);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如果其他html在标签内,如何从div标签中提取python中的文本?

如果我的Laravel数据库中没有标签,如何隐藏标签?

SearchView在工具栏中隐藏其他标签

选择标签中的“其他”选项时显示隐藏字段

如何从标签中获取文本,但忽略其他子标签

单击其他按钮时如何删除标签的类别

如何使单击按钮以其他形式更改标签文本?

如果存在其他标签,如何将键值对提取到dict中?

如果我希望某些标签可以被编辑而其他标签则不能,那么可以禁止在TreeView中编辑节点标签的哪种方式呢?

HTML其他地址标签中的标签

如果单击画布图形中的标签,如何获取被单击的标签

我如何在选项标签内插入其他选项

如果我们从主干中删除代码,它将从所有其他分支和标签中删除吗?

如果还有其他没有标签的盒子,如何抓取某些标签

如何让标签在谷歌标签管理器中的其他标签之前运行?

在新标签中打开其他网站登录我的网站

当我使用 Hooks 在 React 中单击 h3 标签时如何循环组件

我如何先隐藏输入字段并先隐藏标签,然后在单击按钮时显示

如何在 matplotlib 中的绘图中添加其他标签?

单击特定标签时,我希望显示下面带有其他链接的 div

如果缺少标签,如何单击元素

React Navigation如何从堆栈导航中隐藏标签栏

如何在 mui react 的选择标签中隐藏特定选项

如何在段落标签中与段落标签中的其他标签一起刮取文本?

如何自动调整散点图标签而不会与 python 中的其他标签重叠?

如何用存储在php数组中的其他标签替换html标签?

如何使用xml中的xpath访问其他标签内部的标签?

如何在标签搜索-Dynamics365中以其他语言搜索标签?

流星:如何将模板标签嵌入其他模板标签中?