首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用已获取的数据填充<SelectInput>选项

如何使用已获取的数据填充<SelectInput>选项
EN

Stack Overflow用户
提问于 2018-06-28 10:37:15
回答 1查看 1.6K关注 0票数 1

在我的App组件中,我有一个带有编辑组件的订阅资源:

代码语言:javascript
复制
<Resource name="subscriptions" list={SubscriptionList} edit={SubscriptionEdit} />

SubscriptionEdit看起来像这样:

代码语言:javascript
复制
 export const SubscriptionEdit = props => (
  <Edit title={<SubscriptionTitle />} {...props}>
    <TabbedForm >
      <FormTab label="Info">
        ...

        <SelectInput
          source="typeSubscription"
          choices={[
            { id: 'monthly', name: 'Monthly' },
            { id: 'anual', name: 'Anual' },
          ]}
          label="Subscription plan"
        />
      </FormTab>
    </TabbedForm>
  </Edit>
);

当您进入此视图时,从端点获取的数据是如下所示的JSON:

代码语言:javascript
复制
{
  id: 1,
  typeSubscription: null,
  selectedDay: null,
  daysAvailable: [
      { id: '07-01-2018', name: 'First day` },
      { id: '07-03-2018', name: 'Second day` },
      { id: '07-07-2018', name: 'Third day` },
      { id: '07-08-2018', name: 'Fourth day` },
  ],
}

我需要做的是使用daysAvailable数组为选项添加另一个SelectInput,以便为“selectedDay”选择日期。

代码语言:javascript
复制
<SelectInput
      source="selectedDay"
      choices={NEED TO ADD daysAvailable HERE!}
      label="Select an available day"
 />

这些数据已经在商店和记录属性中可用,但我不知道如何在选择中正确使用它。尝试像道具一样直接使用它会导致不同的错误,我认为这是正常的,因为我正在扰乱redux和admin-on-rest的内部。

按照文档的建议,我尝试使用ReferenceInput并将SelectInput的选项保留为空,但是由于此日期列表根据用户的ID而变化,因此我找不到一种方法将此参数添加到新的资源中。

我正在使用admin-on-rest,但计划在不久的将来升级到react-admin,如果这是相关的话。

也就是说,任何帮助都将不胜感激。

干杯!

EN

回答 1

Stack Overflow用户

发布于 2018-09-28 03:28:06

这就是ReferenceInput的用途。您可以提供资源的名称,如下所示:

代码语言:javascript
复制
import { ReferenceInput, SelectInput } from 'react-admin'

<ReferenceInput label="Post" source="post_id" reference="posts">
    <SelectInput optionText="title" />
</ReferenceInput>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51073910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档