带状态记录的admin-on-rest feed

时间:2018-05-22 07:11:47

标签: reactjs admin-on-rest react-admin

我有一个像

这样的DisabledInput
<DisabledInput source="values" />

但我想用状态变量来提供这个字段。因为此状态变量可以随用户交互而改变。更确切地说,在页面上,有一个列表框,当用户向此列表框添加新值时,&#34;值&#34;状态变量改变如

&#34; item1,item2,item3 ...&#34;我想把这个状态变量作为数据提供给DisabledInput

this.state.values

我不知道该怎么做。也许有一种方式如下,但我无法做到这一点

<DisabledInput source="values" record={this.state.values} />

有可能吗?

1 个答案:

答案 0 :(得分:0)

我使用了ArrayInput,如下所示。 我以前没有意识到这个组件。

<SelectInput source='type'
            choices={[
                { name: 'String', id: 'string' },
                { name: 'Enum', id: 'enum' },
                { name: 'Decimal', id: 'decimal' }
            ]}
            onChange={event => {
                const type = Object.values(event).slice(0, -1).join('');
                this.setState({
                    listEditorVisible: type === 'enum',
                    regexEditorVisible: type === 'string',
                    decimalEditorVisible: type === 'decimal'
                });
            }}
/>
{this.state.listEditorVisible ?
    <ArrayInput source='values'>
        <SimpleFormIterator>
            <TextInput source='name' />
        </SimpleFormIterator>
    </ArrayInput>
    :
    null}
{this.state.decimalEditorVisible ?
    <div>
        <NumberInput source="min" /><br />
        <NumberInput source="max" /><br />
        <NumberInput source="res" /><br />
        <TextInput source="unit" />
    </div>
    :
    null}