[英]reactjs update setState from map object data
I want to update my setValidDate
state with date
that is coming from the item
, but when I set the value right after the data got mapped I got an error says Too many re-renders. React limits the number of renders to prevent an infinite loop
我想用来自
item
的date
更新我的setValidDate
state ,但是当我在数据映射后立即设置值时,我收到一个错误,说Too many re-renders. React limits the number of renders to prevent an infinite loop
Too many re-renders. React limits the number of renders to prevent an infinite loop
. Too many re-renders. React limits the number of renders to prevent an infinite loop
。 Is there any way to update the new value?有没有办法更新新值? And why it's error?
为什么它是错误的?
const [validDate, setValidDate] = useState("");
return(
...
{items.map((item) => {
const { id, name, date, image, desc } = item;
setValidDate(date); //this one cause error
return (
...
)
)
This is what you are looking for:这就是您要查找的内容:
const [validDate, setValidDate] = useState("");
updateDate(date){
setValidDate(date)
}
return(
...
{items.map((item) => {
const { id, name, date, image, desc } = item;
return (
<input onChange={()=> updateDate(date)}>
)
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.