【发布时间】:2021-11-13 15:23:59
【问题描述】:
我在 localStorage 中获取和设置数据时遇到问题,我使用 NextJs,然后我一开始无法使用 localStorage。
我尝试使用 useEffect 解决,但我有一个无限循环,我知道它是针对依赖项的。我不知道使用 useCallback 或 useMemo 或 useRef 解决问题的最佳方法。
我粘贴了部分有问题的代码。
const [ meetings, setMeetings] = useState([]) // meetings= [{meeting1},{meeting2}]
useEffect(() => {
if(localStorage.getItem('meetings') === undefined ||
localStorage.getItem('meetings') === '' ||
localStorage.getItem('meetings') === null
){
localStorage.setItem('meetings', JSON.stringify([]))
}
if( JSON.parse(localStorage.getItem('meetings')).length === 0){
const meetingsInLocalStorage = JSON.parse(localStorage.getItem('meetings'))
setMeetings([...meetings, meetingsInLocalStorage])
}
},[meetings])
【问题讨论】:
-
是否有理由需要在依赖项数组中包含
meetings?
标签: reactjs next.js local-storage use-effect