首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当初始值发生变化时,Formik创建无限呈现。

问当初始值发生变化时,Formik创建无限呈现。
EN

Stack Overflow用户
提问于 2022-08-30 15:35:00
回答 1查看 105关注 0票数 0

我正在使用formik在react项目。该表单具有名称输入,如果可用,则从本地存储中获取初始值。在更改名字输入时,我在本地存储中更改它的值。

代码语言:javascript
复制
const prefilledValues = JSON.parse( window.localStorage.getItem("pre-signup-form"));`

useEffect(() =>
 { window.localStorage.setItem( "pre-signup-form", 
   JSON.stringify({ ...prefilledValues, ...formik.values }) ); 
}, [formik.values, prefilledValues]);

我使用useFormik来设置初始值。当我更改名字输入(它基本上改变了本地存储中的值以及初始值)时,它会导致太多的呈现,页面会变得没有响应。

示例:https://codesandbox.io/s/youthful-saha-63bp8t?file=/src/App.js

EN

回答 1

Stack Overflow用户

发布于 2022-08-31 18:44:29

更好的方法是使用localStorage分离逻辑,将其移动到自定义钩子。检查这里的方法,https://codesandbox.io/s/local-storage-d5m1zx?file=/src/App.js

我用LC将逻辑转移到useLocalStorage钩子。现在,更改名称并不会导致无限呈现。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73545060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档