配列の中身をmapで回してisShowDataでstateで管理しているmessageDataと比較して同じものがあれば表示せず、違う値なら表示したいです。
stateのmessageDateには同じ値が入らないようにしたいです
以下のように書いたのですがループのエラーになってしまいます。
自分ではどこがおかしいのかが全然わからないのでご教授お願いしたいです。
わかりやすく教えてくれる人よろしくお願いします。
//エラー内容 Unhandled Runtime Error Error: Too many re-renders. React limits the number of renders to prevent an infinite loop.
const Test: FunctionComponent = () => { const [messageDate, setMessageDate] = useState<string[]>([]); const dates = ['2012/11/11', 2012/11/11','2012/11/12','2012/11/12','2012/11/13']; const isShowDate = (date: string) => { if (messageDate.length === 0) { return true; } const isDate = messageDate.some((d) => d != date); return isDate; }; const AddDate = (date: string) => { const NewMessageDate = messageDate; NewMessageDate.push(date); setMessageDate(NewMessageDate); return date; }; return ( <> {dates.map((date, i) => ( <>{isShowDate(date) && <div key={i}>{addDate(date)}</div>}</> ))} </> ); }; export default Test;
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/02 00:35
2020/11/02 00:35
2020/11/02 00:37
2020/11/02 00:38
2020/11/02 00:39
2020/11/02 00:41
2020/11/02 00:43
2020/11/02 00:44
2020/11/02 00:46
2020/11/02 00:46
2020/11/02 00:48
2020/11/02 00:50
2020/11/02 00:53
2020/11/02 00:54
2020/11/02 00:55
2020/11/02 00:56
2020/11/02 00:57
2020/11/02 00:57
2020/11/02 00:57
2020/11/02 00:59
2020/11/02 01:01
2020/11/02 01:01
2020/11/02 01:03
2020/11/02 01:04
2020/11/02 01:04
2020/11/02 01:06 編集
2020/11/02 01:07
2020/11/02 01:18 編集
2020/11/02 01:08
2020/11/02 01:11
2020/11/02 01:13
2020/11/02 01:15 編集
2020/11/02 01:15
2020/11/02 01:15
2020/11/02 01:16
2020/11/02 01:17
2020/11/02 01:19
2020/11/02 01:20
2020/11/02 01:20
2020/11/02 01:21
2020/11/02 01:21
2020/11/02 01:21
2020/11/02 01:22
2020/11/02 01:23
2020/11/02 01:24
2020/11/02 01:25
2020/11/02 01:25
2020/11/02 01:26
2020/11/02 01:27
2020/11/02 01:29
2020/11/02 01:31
2020/11/02 01:31
2020/11/02 01:33
2020/11/02 01:34
2020/11/02 01:35
2020/11/02 01:36
2020/11/02 01:37
2020/11/02 01:37
2020/11/02 01:38
2020/11/02 01:40
2020/11/02 01:41
2020/11/02 01:45
2020/11/02 01:49
2020/11/02 01:54
2020/11/02 07:35