formlardaki kontrolü sağlamak için fromik ve yup kütüphaneleri kullanılır. bu kütüphaneler ile formlarda girilen değerlerin geçerli olup olmadığını kontrol etmek çok basittir.
- Formik ve yup indirilmesi
npm i formik yup
-
Formik kütüphanesi iki şekilde kullanılabilir. 2.1 Bileşen olarak formik kullanılabilir. Kullanımı kolaydır fakat çok fazla özelleştirilemezler. 2.2 useFormik hook u ile kullanımı ile daha özelleştirilebilir formlar oluşturulabilir. Herhangi bir geçersiz veri girildiğinde gönder butonu çalışmaz ve hangi inputa geçersiz veri girildiği ise bunu error() metodu ile döndürür
-
Formik kütüphanesinin kullanımı
import { useFormik } from 'formik'
const formik = useFormik({
//formda tutulacak verilerin ilk değerleri verilir.
initialValues:{
email:'',
age:'',
password: '',
confirmPassword:''
},
//form gönderildiğinde çalışan fonksiyon
onSubmit:(values,actions)=> {
console.log(values)
},
// todo : doğrulama şeması
//formdaki verilerin geçerlilik durumunu belirleme
validationSchema:schema
})
inputtaki verilerin değişimini incelemek için onchange() metodu içerisinde formik kütüphanesinde bulunana handleChange() metodu kullanılır.
<input onChange={formik.handleChange} type={type} name={name} />
- yup kütüphanesi: formdaki verilerin geçerlilik kriterlerini belirlemek için yup kütüphanesi kullanılır.
import * as yup from 'yup'
export const schema = yup.object().shape({
email:yup
.string()
.email('Lütfen geçerli bir email giriniz')
.required('Email alanı zorunludur'),
age:yup
.number()
.min(18,'Yaş değeri 18 den büyük olmalı')
.max(100,'Yaş yüzden büyük olamaz')
.integer('Lütfen Tam sayı giriniz'),
password:'',
confirmPassword:''
})
- coin api den veriler çekildi ve detay sayfasında çizgi ve sütün grafiklerinde bir coin nin detayları gösterildi.