簡體   English   中英

如何在 Formik 驗證模式中從 API 響應后更改最小驗證值?

[英]How to change value of min validation after reponse from API in Formik Validation schema?

我想在收到服務器的響應后更改最小驗證值,這是代碼

 const form =useFormik({ initialValues:{name:'',email:'',price:0}, validationSchema:Yup.object({ 'email':Yup.string().required("Email required").email("Invalid email"), 'name':Yup.string().required("Name is required"), 'price':Yup.number().min(0,"Invalid price") }) })

當頁面加載時,我將從 API 收到新的最小值

 useEffect(()=>{ //API call },[]);

現在我想要新的驗證,其中最小驗證值為 500

 form=useFormik({ initialValues:{name:'',email:'',price:0}, validationSchema:Yup.object({ 'email':Yup.string().required("Email required").email("Invalid email"), 'name':Yup.string().required("Name is required"), 'price':Yup.number().min(500,"Invalid price") }) })

只創建一個變量並設置值怎么樣?

var apiValue = 0;

useEffect(()=>{
  //API call

  apiValue = returnedApiValue //e.g. 500

},[]);

'price':Yup.number().min(apiValue,"Invalid price")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM