从阵列中检索标题

时间:2019-02-27 14:03:43

标签: javascript arrays reactjs

我有一个简单的“多重选择”字段:

<MultiSelectText
    multiple={true}
    options={this.props.fields}
    onChange={this.handleChange}
    name="fields"
    label="fields"
    items={this.props.fields}
    sorting="sorting"
/>

我检索到的数组看起来像这样:

[{name: 'Animals', label_parent: '', sorting: 1}, {name: 'Duck', label_parent: 'Animals', sorting: 2}, {name: 'Dog', label_parent: 'Animals', sorting: 3}, {name: 'Cat', label_parent: 'Animals', sorting: 4}, {name: 'Vehicles', label_parent: '', sorting: 5}, {name: 'Bike', label_parent: 'Vehicles', sorting: 6}, {name: 'Car', label_parent: 'Vehicles', sorting: 7}, {name: 'Motorcycle', label_parent: 'Vehicles', sorting: 8}];

目前,我的“多输入”看起来像这样: Before

但是我需要它看起来像这样: After

我想在“ label parent”为空的任何地方设置标签...对于所有其他字段,我将label_parent设置为“ cat”或“ vehicles”,并且在这些标签中需要将它们显示为选择字段标签“类别”。有没有办法显示多重MultiInputTexts?

1 个答案:

答案 0 :(得分:0)

所以,我自己找到了解决方案。

基本上,您想通过检查字符串来过滤掉所有标签并创建一个新数组

 let animals = this.props.fields.filter(function (a) {
               return a.label === 'Animals';
 });

然后只需在您设置的地方创建每个MultiInput

options={animals}

我想你也可以在这里循环吗?