[英]How can you programmatically resize a column using react-table
使用react-table時,您可以指定defaultColumn
以將默認列寬設置為
const defaultColumn = React.useMemo(
() => ({
Header: DefaultHeader,
Cell: DefaultCell,
width: 200,
}),
[]
);
稍后如何以編程方式更改200
? 如果我要做
const defaultColumn = {
Header: DefaultHeader,
Cell: DefaultCell,
width: 200,
};
然后更新那個200
,那么它就沒有效果,因為react-table
只在初始化時讀取這些值。
由於有一個useMemo
掛鈎,您可以使用傳遞給它的依賴項數組。
您可以像這樣定義defaultColumn
:
const defaultColumn = React.useMemo(
() => ({
Header: DefaultHeader,
Cell: DefaultCell,
width: colWidth,
}),
[colWidth]
);
其中colWidth
是您要傳遞給創建 defaultColumn 的寬度。 現在,當 colWidth 改變時, useMemo
將在渲染時創建新的defaultColumn
。
(請注意, colWidth
是defaultColumn
的同一個 scope 中的一個變量)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.