当我尝试使用map以编程方式创建TableHeaderColumn
时,出现以下错误。
未捕获错误:错误。 TableHeaderColumn中没有定义任何键列。 使用' isKey = {true}'在版本0.5.4之后指定唯一列。
如果我不使用地图和硬编码,相同的值一切正常。我通常使用地图来表格,它通常作为一个魅力。我已尝试使用和不使用key
属性进行映射,同样的错误。
https://stackoverflow.com/a/25647392/3850405
不起作用:
type TableHeader = {
dataField: string;
name: string
isKey: boolean
}
const crimeTableHeaders: TableHeader[] = [{
dataField: 'CrimeCode',
name: 'Brottskod',
isKey: true,
},
{
dataField: 'CrimeCodeClearText',
name: 'Namn',
isKey: false,
},
{
dataField: 'Count',
name: 'Antal',
isKey: false,
}
]
<BootstrapTable containerStyle={{ marginTop: '10px' }} data={this.props.data} options={this.options} striped={true} hover={true} search multiColumnSearch strictSearch>
{crimeTableHeaders.map((tableHeader, index) => {
<TableHeaderColumn key={index} dataField={tableHeader.dataField} isKey={tableHeader.isKey} dataSort={true}>{tableHeader.name}</TableHeaderColumn>
/*<TableHeaderColumn dataField={tableHeader.dataField} isKey={tableHeader.isKey} dataSort={true}>{tableHeader.name}</TableHeaderColumn>*/
})}
</BootstrapTable>
使用:
<BootstrapTable containerStyle={{ marginTop: '10px' }} data={this.props.data} options={this.options} striped={true} hover={true} search multiColumnSearch strictSearch>
<TableHeaderColumn dataField='CrimeCode' isKey={true} dataSort={true}>Brottskod</TableHeaderColumn>
<TableHeaderColumn dataField='CrimeCodeClearText' isKey={false} dataSort={true}>Namn</TableHeaderColumn>
<TableHeaderColumn dataField='Count' isKey={false} dataSort={true}>Antal</TableHeaderColumn>
</BootstrapTable>
答案 0 :(得分:1)
此API是您的解决方案 React bootstrap table - keyField
<BootstrapTable data={ data } keyField='CrimeCode'>
//Map function
</BootstrapTable>