Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用react表以编程方式调整列的大小_Javascript_Reactjs_React Table - Fatal编程技术网

Javascript 如何使用react表以编程方式调整列的大小

Javascript 如何使用react表以编程方式调整列的大小,javascript,reactjs,react-table,Javascript,Reactjs,React Table,使用时,您可以指定defaultColumn,将默认列宽指定为 const defaultColumn = React.useMemo( () => ({ Header: DefaultHeader, Cell: DefaultCell, width: 200, }), [] ); 我怎样才能在一段时间后以编程方式更改该200?如果我要做 const defaultColumn = { Header: D

使用时,您可以指定
defaultColumn
,将默认列宽指定为

  const defaultColumn = React.useMemo(
    () => ({
      Header: DefaultHeader,
      Cell: DefaultCell,
      width: 200,
    }),
    []
  );
我怎样才能在一段时间后以编程方式更改该
200
?如果我要做

  const defaultColumn = {
      Header: DefaultHeader,
      Cell: DefaultCell,
      width: 200,
    };

然后更新
200
,则它没有效果,因为
react table
只在初始化时读取这些值。

因为有一个
usemo
钩子,所以可以使用传递给它的依赖项数组

您可以这样定义
defaultColumn

  const defaultColumn = React.useMemo(
    () => ({
      Header: DefaultHeader,
      Cell: DefaultCell,
      width: colWidth,
    }),
    [colWidth]
  );
其中
colWidth
是要传递给创建defaultColumn的宽度。 现在,当colWidth更改时,
UseMoom
将在渲染时创建新的
defaultColumn


(请注意,
colWidth
是与
defaultColumn
相同范围内的一个变量)。

因为有一个
usemo
钩子,所以可以使用传递给它的依赖项数组

您可以这样定义
defaultColumn

  const defaultColumn = React.useMemo(
    () => ({
      Header: DefaultHeader,
      Cell: DefaultCell,
      width: colWidth,
    }),
    [colWidth]
  );
其中
colWidth
是要传递给创建defaultColumn的宽度。 现在,当colWidth更改时,
UseMoom
将在渲染时创建新的
defaultColumn


(请注意,
colWidth
是与
defaultColumn
相同范围内的一个变量)。

对不起,
useMoom
使这个问题有点误导。即使没有这一点,宽度的变化也不会更新。因此,
useMemo
使这个问题有点误导。即使没有这一点,对宽度的更改也不会更新它