即使使用 setState 和 state 已更改,Recharts Brush 的“startIndex”也不会更改

问题描述

我想使用按钮更改 startIndex,但它不起作用。

const [startIndex,setStartIndex] = useState(0);
...
<Brush dataKey="date" startIndex={startIndex} />
...
<Button onClick = { () => setStartIndex(30) } > Change </Button>

如下图使用useEffect检查时,变量改变正常。

useEffect(() => {
    console.log(startIndex)
},[startIndex])

0 // 第一次渲染

30 // 按钮被点击

它只在窗口大小改变时起作用。有什么解决办法吗?

解决方法

刷新您的数据!

<Brush dataKey="date" startIndex={startIndex} data={...data}/>

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...