我想使用箭头/ Tab键浏览@blueprintjs/table
。
我关注了these document,但找不到任何解决方案。
任何人都可以提供示例代码/解决方案的帮助。
我当前的组件如下。
import React, { Component } from 'react';
import { EditableCell, Column, Table } from "@blueprintjs/table";
class TestComponent extends Component {
constructor(props) {
super(props);
this.renderCell = this.renderCell.bind(this);
}
renderCell (rowIndex, columnIndex) {
const value = null;
return (
<EditableCell alue={value == null ? "" : value}/>
);
}
render() {
const columns = ["Please", "Rename", "Me"].map((_ , index) => {
return (
<Column key={index} cellRenderer={this.renderCell} enableFocus="true"/>
);
});
return (
<Table numRows={7} enableFocus="true">{columns}</Table>
);
}
}
export default TestComponent;
答案 0 :(得分:2)
我找到了解决方案,所以回答我自己的问题。
我们应该对表组件使用 enableFocusedCell="true"
,以启用使用箭头/ tab键的导航。
请在下面找到示例代码。
首次导入CSS
import "@blueprintjs/table/lib/css/table.css";
然后创建一个如下所示的组件
import React, { Component } from 'react';
import { Cell, Column, Table } from "@blueprintjs/table";
const cellRenderer = (rowIndex) => {
return <Cell>{`$${(rowIndex * 10).toFixed(2)}`}</Cell>
};
class LedgerGroup extends Component {
constructor(props) {
super(props);
}
render() {
return (
<Table numRows={10} enableFocusedCell="true">
<Column name="Dollars 1" cellRenderer={cellRenderer}/>
<Column name="Dollars 2" cellRenderer={cellRenderer}/>
</Table>
);
}
}
export default LedgerGroup;