【发布时间】:2020-07-10 02:36:35
【问题描述】:
我有以下组件:
const [eventCounter, setEventCounter] = useState(0)
let subsectionRefs = data ? Object.values(data).reduce((acc, event) => {
acc[event.id] = useRef();
return acc;
}, {}) : {};
const setRankChangeFocus = eventID => {
setEventCounter(eventCounter + 1);
window.scrollTo(0, subsectionRefs[eventID].current.offsetTop);
};
return (
<Comp
key={event.id}
onRankChange={(value) => {
setRankChangeFocus(value);
}}
/>
)
基本上,我希望subsectionRefs 每次从子组件Comp 调用setRankChangeFocus(value) 时重新初始化。
但是,当我加载页面时,我收到“渲染的钩子比上一次渲染期间更多”错误 - 为什么?我做错了什么?
【问题讨论】:
标签: reactjs react-hooks