前提・実現したいこと
next jsでtypescriptを使用していて、
input type='month'でonchangeを使える様にしたいです。
発生している問題・エラーメッセージ
Type 'Dispatch<SetStateAction<Date>>' is not assignable to type '(event: ChangeEvent<HTMLInputElement>) => void'. Types of parameters 'value' and 'event' are incompatible. Type 'ChangeEvent<HTMLInputElement>' is not assignable to type 'SetStateAction<Date>'. Type 'ChangeEvent<HTMLInputElement>' is not assignable to type '(prevState: Date) => Date'. Type 'ChangeEvent<HTMLInputElement>' provides no match for the signature '(prevState: Date): Date'.
該当のソースコード
typescript
1import React, { useState, useEffect } from 'react'; 2export default function Index() { 3const [startAt, setStartAt] = useState( 4 startOfMonth(new Date().setMonth(7)), 5 ); 6 7function sampleDate(date, format) { 8 format = format.replace(/YYYY/g, date.getFullYear()); 9 format = format.replace( 10 /MM/g, 11 ('00' + (date.getMonth() + 1)).slice(-2), 12 ); 13 return format; 14 } 15return ( 16 <input 17 type='month' 18 value={sampleDate(startAt, 'YYYY-MM')} 19 onChange={setStartAt} 20 /> 21 22) 23} 24 25
試したこと
inputの中を
onChanhe={sampleDate(setStartAt, 'YYYY-MM')}
としても同じエラーが発生しました。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。