我有以下列定义
<AgGridColumn headerName="Rank" cellRendererFramework={NodeIDRenderer} suppressFilter={true} suppressSorting={true} lockPosition/>
它使用的Cell渲染器就是这个
import React from 'react';
class NodeIDRenderer extends React.Component {
render() {
return (
<div>{Number(this.props.node.id) + 1}</div>
);
}
}
export default NodeIDRenderer;
我要做的是让这个列在排序时对其他列进行排序。因此,我希望此列始终启动1并转到N.我面临的问题是,当我对其他任何列进行排序时,此Rank列也会发生变化。有没有办法锁定&#34;列,所以数据永远不会移动?
答案 0 :(得分:1)
使用node.rowIndex
而不是node.id
。 id被设置一次以维护对节点的唯一引用,索引在任何排序或过滤器上更新。我注意到过滤器的行倾向有点不可靠,所以当更新过滤器时,我调用了网格api的refreshCells
函数。您可以使用Here is a plunker进行测试。