Reactjs React Admin,根据ReferenceInput清空ArrayInput
我有如下代码(我在前端使用react admin) 我想做的事情就是这样;当我更改SelectInput(datapointtype)时,“parameters”ArrayInput必须为空,即使它有元素Reactjs React Admin,根据ReferenceInput清空ArrayInput,reactjs,react-admin,Reactjs,React Admin,我有如下代码(我在前端使用react admin) 我想做的事情就是这样;当我更改SelectInput(datapointtype)时,“parameters”ArrayInput必须为空,即使它有元素 我该怎么做?您能显示SelectInput更改功能吗?更改功能的内容是关于目前的另一项要求。我的意思是在函数中没有我的问题。但是我为您添加了它hey@CanselMuti,想问一下每个引用输入是否调用您的API?所以如果你在页面上有10个,你就有10个额外的请求?嘿@mmmm。这是真的,所以有
我该怎么做?您能显示SelectInput更改功能吗?更改功能的内容是关于目前的另一项要求。我的意思是在函数中没有我的问题。但是我为您添加了它hey@CanselMuti,想问一下每个引用输入是否调用您的API?所以如果你在页面上有10个,你就有10个额外的请求?嘿@mmmm。这是真的,所以有10个额外的请求,但当然,我们改变了这个过程。我记不清了,但我们可能已经使用redux来实现这一点,而不需要额外的10个请求,因为它不是在react admin开箱即用的?
<ReferenceInput label="DataPoint Types" source="datapointtype" reference="datapointtypes" onChange={this.dptChanged}>
<SelectInput optionText="id" />
</ReferenceInput>
<ArrayInput source='parameters'>
<SimpleFormIterator>
<TextInput source='id' label="name" validate {this.validateParameterName} />
<ReferenceInput label="Parameter DataType" source="parameters" reference="datatypes">
<SelectInput optionText="id" source="id" />
</ReferenceInput>
</SimpleFormIterator>
</ArrayInput>
dptChanged(event) {
const dataPointType = Object.values(event).slice(0, -1).join('');
axios.get('http://localhost:3001/designer/datapointtypes/' + dataPointType)
.then(response => {
if (response.data.parameters) {
this.setState({
connectedParameters: Object.values(response.data.parameters)
})
}
});
axios.get('http://localhost:3001/designer/datatypes')
.then(response => {
this.setState({
datatypes: response.data
})
})
}