私はReactで働いていますが、私はドロップダウンコンポーネントのオプションを生成しようとしている次のデータ構造を持っています。マップとES6矢印機能を使用した3組のチームメンバー。マップとES6の矢印機能を使用してOptgroupでオプションを生成
"teams": [
{
"Group A":
[
{ "id": "A1", "name": "John" },
{ "id": "A2", "name": "Erin" },
{ "id": "A3", "name": "Steve" }
],
"Group B":
[
{ "id": "B1", "name": "Mark" },
{ "id": "B2", "name": "Doug" },
{ "id": "B3", "name": "Sam" },
{ "id": "B4", "name": "Kate" }
],
"Group C":
[
{ "id": "C1", "name": "Michelle" },
{ "id": "C2", "name": "April" },
{ "id": "C3", "name": "Mike" },
{ "id": "C4", "name": "Albert" }
]
}
]
JSONが、私はこの構文を使用していた、チーム・グループで入れ子になった前に:
let teamOptions = this.props.firm.teams.map(memb => <Option key={memb.id}>{memb.name}</Option>);
今、私はグループにチームメンバーを入れ子になったので、私はされていませんこれを処理する正しい方法を理解することができます。
私は、出力が似ているしたいと思います:
<OptGroup label="Group A">
<Option value="A1">John</Option>
<Option value="A2">Erin</Option>
<Option value="A3">Erin</Option>
</OptGroup>
<OptGroup label="Group B">
<Option value="B1">Mark</Option>
<Option value="B2">Doug</Option>
<Option value="B3">Sam</Option>
<Option value="B4">Kate</Option>
</OptGroup>
<OptGroup label="Group C">
<Option value="C1">Michelle</Option>
<Option value="C2">April</Option>
<Option value="C3">Mike</Option>
<Option value="C4">Albert</Option>
</OptGroup>
興味があるだけ、それらのタグ名は小文字ではないでしょうか? – Bergi
なぜ 'teams'は1つのオブジェクトを含む配列ですか? – Bergi
@Bergi Reactでは、コンポーネントは通常、大文字で書かれています。 – Ksyqo