為什么我每次改變欄位都不能得到資料?誰能幫我配置一下?我的代碼中是不是漏掉了什么?我只是想,如果用戶點擊提交,它將捕獲我在TextField和Select中輸入的內容
。 const [ author, setAuthor] = useState('')。
const [ datef, setDateF] = useState('') 。
const [ datet, setDateT] = useState('') 。
const handleChangeAuthor=(event)=> {
console.log("handleChangeAuthor: "/span>, event)
setAuthor(name)
};
const handleChangesetDateF = (event)=> {
console.log("handleChangesetDateF: "/span>, event)
setDateF(name)
};
const handleChangesetDateT = (event)=> {
console.log("handleChangesetDateT: "/span>, event)
setDateT(name)
};
const handleSubmit= async( valuesToSubmit) =>
{
console.log("valuesToSubmit: "/span>, valuesToSubmit)
}
............
<Formik
initialValues={{
strdatefrom: datef,
strdateto:datet,
intuserauthorid:作者。
intfmdocumentclassificationsid:selecteddocClassification。
intlimit:"100"/span>。
intoffset:"0", intoffset:"0"
}}
onSubmit={(values) =>{ console. log("submit"); handleSubmit( values)}}.
>
{({ handleChange, handleBlur, handleSubmit, values, errors, isValid,touch,setFieldValue }) => (
<>
<Grid container> (
<Grid xs={12} className={classes. grid}>
<TextField
id="date"。
label="Date from"
type="date"/span>
name="datet"/span>
onChange={handleChangesetDateF(value.datet)}
defaultValue="2017-05-24"
name="datef"/span>
className={classes.textField}/>
</Grid>/span>
<Grid xs={12} className={classes. grid}>
<TextField
id="date"。
label="date to"
type="date"/span>
name="datef"/span>
onChange={handleChangesetDateT(value.datef)}
defaultValue="2017-05-24"
className={classes.textField}/>
</Grid>/span>
<Grid xs={12} className={classes. grid}>
<FormControl variant=" outlined" className={classes. formControl}>
<InputLabel htmlFor=" outlined-age-native-Simple"> 作者</InputLabel>。
<Select
name="author"。
value={author}
onChange={handleChangeAuthor(value.author)}
label="author">
{users}
</Select> {users}
</FormControl>/span>
</Grid>/span>
</>
)}
</Formik> )}</> )
從這一行開始,請忽略這個資訊,我做這個資訊是為了讓我 可以在這里提交一個問題
uj5u.com熱心網友回復:
你不必為formik使用一個本地狀態,formik可以在內部管理狀態,所以你必須做這樣的事情來更新值。
<TextField。
id="date"/span>
label="Date from"/span>
type="date"/span>
name="datet"
onChange={event=>setFieldValue('datet',event。 target.value) }
defaultValue="2017-05-24"
name="datef"。
className={classes.textField}。
value={values.datet}/>
formik中的setFieldValue可以更新formik的狀態,你可以在handlesubmit呼叫中檢索
。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/326334.html
標籤:
