簡體   English   中英

如何使用 react-table 以編程方式調整列的大小

[英]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

(請注意, colWidthdefaultColumn的同一個 scope 中的一個變量)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM