[英]Return multiple react components from a javascript function
我正在嘗試在 React 中動態構建一個表。 表格中的單元格將來自傳入 HTML 對象的dataset
屬性。 該表將有兩列 - 屬性名稱和屬性值。
此函數構建外部表:
buildDataList = () => (
<Scroll>
<Table isStriped key={this.claimCountLimitPerFin} >
<Table.Header>
<Table.HeaderCell content="Name" minWidth="medium" />
<Table.HeaderCell content="Value" minWidth="medium" />
</Table.Header>
<Table.MultiSelectableRows // this is probably not necessary?
maxSelectionCount={10}
>
{this.buildTableRows2()}
</Table.MultiSelectableRows>
</Table>
</Scroll>
);
這是我調用以構建TableRows
的函數:
buildTableRows2 = () => {
Object.keys(this.props.dataset).forEach(datum => <Table.Row
id={datum}
key={`ROW_${datum}`}
>
{this.buildTextCell(datum)}
{this.buildTextCell(this.props.dataset[datum])}
</Table.Row>);
}
我不知道如何讓buildTableRows2
返回所有的TableRow
! 它沒有返回任何內容,但我看到它正在按照我的預期循環遍歷數據集的所有屬性。 我嘗試將它包裝在 React 片段中,但這沒有用。 我想不出任何其他可能的解決方案。 有任何想法嗎?
您的代碼中有兩個問題:
buildTableRows2()
函數返回任何內容。 您需要在buildTableRows2()
函數內的Object.keys()
之前添加return
關鍵字。.forEach()
方法不返回任何內容,您需要使用.map()
方法。 更改buildTableRows2()
函數,如下所示:
buildTableRows2 = () => {
return Object.keys(this.props.dataset).map(datum => (
<Table.Row
id={datum}
key={`ROW_${datum}`}
>
{this.buildTextCell(datum)}
{this.buildTextCell(this.props.dataset[datum])}
</Table.Row>
);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.