Ako používať Formik na vytváranie formulárov v Reacte

Formik uľahčuje vytváranie formulárov v Reacte. Tu je návod, ako používať Formik na vytváranie formulárov v Reacte .

Ako používať Formik na vytváranie formulárov v Reacte

Formik a formuláre v Reacte

Formik je knižnica na správu formulárov, ktorá poskytuje komponenty a háčiky, ktoré zjednodušujú proces vytvárania formulárov React. V tomto článku sa s Download.vn naučíme , ako vytvoriť registračný formulár v React pomocou Formik !

Ako používať Formik na vytváranie formulárov v Reacte

Vytvorte aplikáciu React

Na vytvorenie nového projektu React použite aplikáciu create-react-app :

npx create-react-app formik-form

Teraz prejdite do priečinka formik-form/src a odstráňte všetky súbory okrem App.js . Ďalej vytvorte nový súbor a pomenujte ho Register.js . Tu pridáte formulár. Nezabudnite ho importovať do App.js .

Vytvorte formulár v React

Môžete vytvárať formuláre v React s kontrolovanými komponentmi alebo nie.

  • Údaje formulára vygenerované z ovládacieho komponentu bude spracovávať React.
  • Údaje formulára generované z nekontrolovaných prvkov sú spracované pomocou DOM.

React vás vyzýva, aby ste používali kontrolované komponenty. Umožňujú vám lokálne sledovať údaje formulára, takže máte plnú kontrolu nad formulárom.

Nižšie je uvedený príklad formulára vytvoreného pomocou riadeného komponentu:

import { useState } from "react";
const Register = () => {
 const [email, setemail] = useState("");
 const [password, setpassword] = useState("");
 const handleSubmit = (event) => {
 event.preventDefault();
 console.log(email);
 };
 const handleEmail = (event) => {
 setemail(event.target.value);
 };
 const handlePassword = (event) => {
 setpassword(event.target.value);
 };
 return (
 

); }; export default Register;

Vo vyššie uvedenom kóde inicializujete stav a vytvárate funkciu obsluhy pre každé vstupné pole. Kým to funguje, váš kód sa môže opakovať a môže byť chaotický, najmä ak existuje veľa vstupných polí. Ďalšou výzvou je pridanie validácie a spracovania chybových hlásení.

Formik môže znížiť vyššie uvedený stav. Vďaka tomu je manipulácia so stavom, overovanie a zadávanie údajov hračkou.

Pridajte Formik do React

Pred použitím formiku ho pridajte do projektu pomocou npm.

npm install formik

Na integráciu Formik použijete hák useFormik. V Register.js zadajte useFormik v hornej časti súboru:

import { useFormik } from "formik"

Prvým krokom je nastavenie hodnôt formulára. V tomto prípade inicializujete svoj e-mail a heslo.

const formik = useFormik({
 initialValues: {
 email: "",
 password: "",
 },
 onSubmit: values => {
// handle form submission
 },
});

Musíte tiež pridať funkciu onSubmit, ktorá získava hodnoty a spracováva odoslanie formulára. V prípade registračného formulára táto akcia vytvorí nového používateľa v databáze.

Ďalším krokom je použitie objektu formik na získanie hodnôt formulára v stave a mimo neho.

 

Vo vyššie uvedenom kóde ste:

  • Zadajte vstupným poliam hodnoty id a name ekvivalentné hodnotám použitým počas inicializácie pomocou háku useFormik .
  • Získajte prístup k hodnote poľa pomocou jeho názvu na extrahovanie z formik.values ​​​​.
  • Ak chcete zobraziť vstupné hodnoty ako typy používateľov, pripojte formik.handleChange k udalosti onChange .
  • Na sledovanie navštívených polí použite formik.handleBlur .
  • Spojte formik.handleSubmit s udalosťou onSubmit , aby sa spustila funkcia onSubmit, ktorú ste pridali do háku useFormik .

Povoliť overenie formulárov

Pri vytváraní formulára je dôležitá validácia vstupu, pretože zabezpečuje jednoduchú autentifikáciu používateľa a uloženie údajov v správnom formáte. Môžete si napríklad skontrolovať platnosť emailu, heslo má všetky potrebné znaky...

Ak chcete overiť formulár v tomto príklade, vyberte príslušnú funkciu, prijmite hodnoty formulára a vráťte chybový objekt.

Ak do useFormik pridáte funkciu overenia , všetky nájdené chyby overenia budú v súbore Formik.errors , indexované podľa názvu vstupného poľa. Napríklad chyby týkajúce sa e-mailových polí môžete zobraziť pomocou Formik.errors.email .

V Register.js vytvorte overovaciu funkciu a zahrňte ju do useFormik .

const formik = useFormik({
 initialValues: {
 email: "",
 password: "",
 },
 validate: () => {
 const errors = {};
 console.log(errors)
 if (!formik.values.email) {
 errors.email = "Required";
 } else if (
 !/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$/i.test(formik.values.email)
 ) {
 errors.email = "Invalid email address";
 }
 if (!formik.values.password) {
 errors.password = "Required";
 } else if (formik.values.password.length < 8)="" {="" errors.password="Must be 8 characters or more" ;="" }="" return="" errors;="" },="" onsubmit:="" (values)=""> {
 console.log("submitted!");
 // handle submission
 },
});

Pridajte spracovanie chýb

Ďalej zobrazte chybové hlásenia, ak nejaké existujú. Pomocou Formik.touched skontrolujte, či bolo toto pole navštívené alebo nie. Tým sa zabráni zobrazeniu chyby v poli, kam používateľ ešte nepristúpil.

 

{formik.touched.email && formik.errors.email ?

{formik.errors.email}

: null} {formik.touched.password && formik.errors.password ?

{formik.errors.password}

: null}

Overte údaje pomocou Yup

Formik poskytuje jednoduchší spôsob overovania formulárov pomocou knižnice Yup. Ak chcete začať, nainštalujte Yup:

npm install yup

Zadajte yup do Register.js .

import * as Yup from "yup"

Namiesto písania vlastnej autentifikačnej funkcie bude používanie Yup na kontrolu platnosti e-mailov a hesiel rýchlejšie.

const formik = useFormik({
 initialValues: {
 email: "",
 password: "",
 },
 validationSchema: Yup.object().shape({
 email: Yup.string()
 .email("Invalid email address")
 .required("Required"),
 password: Yup.string()
 .min(8, "Must be 8 characters or more")
 .required("Required")
 }),
 onSubmit: (values) => {
 console.log("submitted!");
// handle submission
 },
});

Hotovo! Vytvorili ste jednoduchý registračný formulár pomocou Formik a Yup .

Vyššie je uvedený najjednoduchší spôsob, ako použiť Formik na vytváranie formulárov v Reacte . Dúfame, že tento článok je pre vás užitočný!

Zanechať komentár

Šablóna PowerPointu o výročnej správe neziskovej organizácie: Možnosti bezplatného stiahnutia a kontrolný zoznam slajdov

Šablóna PowerPointu o výročnej správe neziskovej organizácie: Možnosti bezplatného stiahnutia a kontrolný zoznam slajdov

Vytvorte prehľadnú výročnú správu neziskovej organizácie v PowerPointe s bezplatnou šablónou, praktickou štruktúrou slajdov, metrikami vplyvu, finančnými údajmi a tipmi na prezentácie pripravené pre darcov.

Šablóna PowerPointu pre minimalistickú investorskú prezentáciu pre technologické startupy: Čo zahrnúť a čo vynechať

Šablóna PowerPointu pre minimalistickú investorskú prezentáciu pre technologické startupy: Čo zahrnúť a čo vynechať

Vytvorte si v PowerPointe prezentáciu pre investorov z oblasti čistých technologických startupov s praktickou štruktúrou slajdov, posolstvom zameraným na dôkazy, prístupným dizajnom a menším počtom rušivých elementov.

Šablóna matice delegovania úloh pre Word: Praktická verzia pre manažérov malých tímov

Šablóna matice delegovania úloh pre Word: Praktická verzia pre manažérov malých tímov

Pomocou tejto jednoduchej šablóny matice delegovania úloh vo Worde môžete priradiť vlastníkov, limity rozhodovania, termíny a kontrolné body bez toho, aby ste príliš komplikovali malý tím.

Šablóna jednoduchého hárku dochádzky do škôlky: Prihlásenie a odhlásenie na vytlačenie pre domácu starostlivosť o deti

Šablóna jednoduchého hárku dochádzky do škôlky: Prihlásenie a odhlásenie na vytlačenie pre domácu starostlivosť o deti

Použite tento jednoduchý tlačiteľný hárok dochádzky do škôlky pre domácu starostlivosť o deti s menami detí, časmi príchodu/odchodu, podpismi a tipmi na dodržiavanie predpisov.

Šablóna marketingovej stratégie na jednu stránku na tlač pre miestne firmy

Šablóna marketingovej stratégie na jednu stránku na tlač pre miestne firmy

Použite túto šablónu marketingovej stratégie na vytlačenie na definovanie vášho miestneho publika, ponuky, kanálov, rozpočtu, týždenných akcií a merateľných cieľov.

Ako zabrániť Excelu v automatickej zmene čísel na dátumy

Ako zabrániť Excelu v automatickej zmene čísel na dátumy

Zastavte Excel v konverzii hodnôt ako 1/2, 11-53 alebo JAN1 na dátumy. Naučte sa spoľahlivé riešenia pre písanie, vkladanie, import CSV a už konvertované bunky.

Šablóna PowerPointovej prezentácie moderného zoznamu nehnuteľností (bezplatná): Čo zahrnúť

Šablóna PowerPointovej prezentácie moderného zoznamu nehnuteľností (bezplatná): Čo zahrnúť

Vytvorte si bezplatne elegantný PowerPointový zápis nehnuteľnosti s praktickým plánom slajdov, fotografiami, brandingom, tipmi na prístupnosť, dodržiavanie predpisov a export.

Ako opraviť chybu Outlooku: Nemožno odoslať e-mail, ale príjem funguje

Ako opraviť chybu Outlooku: Nemožno odoslať e-mail, ale príjem funguje

Opravte Outlook, keď môžete prijímať e-maily, ale nemôžete ich odosielať. Skontrolujte Poštovú schránku na odoslanie, offline režim, prihlásenie, nastavenia SMTP, profily a zmeny v Microsoft 365.

Jednoduchá šablóna Excelu na sledovanie dvojtyždenného mzdového účtovníctva pre malé tímy: Praktická príručka na nastavenie

Jednoduchá šablóna Excelu na sledovanie dvojtyždenného mzdového účtovníctva pre malé tímy: Praktická príručka na nastavenie

Vytvorte jednoduchý dvojtyždenný sledovač miezd v Exceli pre malý tím, vrátane hodín, výplat, odpočtov, príznakov na kontrolu, súhrnov a usmernení na vedenie záznamov.

Kontrolný zoznam pre plánovanie udalostí a šablóna rozpočtu na tlač pre Word: Čo zahrnúť a kedy namiesto toho použiť Excel

Kontrolný zoznam pre plánovanie udalostí a šablóna rozpočtu na tlač pre Word: Čo zahrnúť a kedy namiesto toho použiť Excel

Vytvorte alebo prispôsobte si tlačiteľnú šablónu kontrolného zoznamu a rozpočtu pre plánovanie udalostí v programe Microsoft Word s praktickými časťami, kompromismi a tipmi pre porovnanie Wordu a Excelu.