Sadržaj:
- Pribor
- Korak 1: Reagirajte na srednjem vodiču
- Korak 2: Korak 1: Početak
- Korak 3: Dodavanje načina dodavanja i uklanjanja objekata
Video: React Intermediate Tutorial: 3 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:34
React Intermediate Tutorial
Ovdje pogledajte gotov proizvod.
Što ćete naučiti?
S React.js ćete stvoriti jednostavan popis zadataka i naučiti o složenijim dijelovima reakcije. Preduvjeti (visoko preporučeno) dovršite vodič za početak reagiranja.js. Poznavanje HTMLAn -a, poznavanje CSS -ovih naredbi ljuske.
Pribor
Sav softver bit će obrađen u vodiču.
Trebat će vam računalo sa instaliranim sljedećim softverom:
- npm/pređa
- IDE koji podržava js
- Web preglednik
Korak 1: Reagirajte na srednjem vodiču
Početak rada
Zašto React.js?
S React.js, poanta je ponovna upotreba koda. Na primjer, recimo da imate navigacijsku traku koju imate na 100 stranica. Ako trebate dodati novu stranicu, tada morate promijeniti navigacijsku traku na svakoj stranici, što znači da morate učiniti istu stvar za 100 stranica. Čak i uz makronaredbe, ovo postaje vrlo zamorno.
Instaliranje potrebnog softvera/paketa
Trebat će vam:
npm/pređa
Kako instalirati:
- Idite i instalirajte najnoviji LTS za Node.js
- NEOBVEZNO: ako više volite pređu kao upravitelja paketa, instalirajte pređu upisivanjem u powershell npm install -g pređe
- Otvorite powershell/cmd.exe
- Dođite do direktorija u kojem želite stvoriti svoj projekt
- Upišite npx create-response-app.
Dovršili ste fazu postavljanja. da biste ga testirali, otvorite powershell, idite do direktorija vašeg projekta i upišite npm start. trebali biste učitati web stranicu u zadani preglednik.
Korak 2: Korak 1: Početak
Za početak izbrišite sljedeće datoteke iz direktorija /src:
- App.test.js
- index.css
- logo.svg
- serviceWorker.js
- setupTests.js
Ne trebaju nam te datoteke.
Organizirajmo i naš datotečni sustav. Izradite ove direktorije u /src /:
- js
- css
stavite App.js u js dir i App.css u css dir.
Zatim, reorganizirajmo ovisnosti.
u index.js, uklonite uvoz za serviceWorker i index.css. Izbrišite serviceWorker.register (). Preusmjerite staze za App.
u App.js uklonite uvoz za logo.svg jer nam više ne treba. Preusmjeri aplikaciju.css. izbrišite funkciju App () i izvoz za aplikaciju.
U React -u imamo 2 načina definiranja elemenata. Imamo funkcije i klase. funkcije su za manje komplicirane stavke, a klase su općenito za složenije komponente. Budući da je popis zadataka složeniji od hrpe HTML -a, upotrijebit ćemo sintaksu klase.
Dodajte ovo svom kodu:
pastebin.com/nGXeCpaH
html će ići unutar 2 diva.
definirajmo Element.
pastebin.com/amjd0jnb
uočiti kako smo definirali vrijednost u državi. Ovo će nam trebati kasnije.
u funkciji render zamijenite hi sa {this.state.value}
generiramo vrijednost prolaznu iz stanja koje smo definirali.
pa probajmo!
u funkciji renderiranja aplikacije zamijenite je ovim:
pastebin.com/aGLX4jVE
trebao bi prikazati vrijednost: "test".
da vidimo možemo li iscrtati više zadataka!
umjesto da natjeramo React da iscrta samo jedan element, možemo stvoriti niz i narediti reagirati umjesto iscrtavanja niza.
promijenite funkciju renderiranja u na:
pastebin.com/05nqsw71
ovo bi trebalo donijeti 10 različitih zadataka. Obratite pažnju na to kako smo dodali ključeve. Ti se ključevi koriste kao identifikatori za reakciju i mi, ako nam zatrebaju.
Sada kada naš popis zadataka radi, pronašli smo način za učitavanje zadataka. Tu dolazi naša država.
dodajmo konstruktor u naš.
pastebin.com/9jHAz2AS
U ovom konstruktoru premjestili smo taskArray dalje od funkcije render u stanje. obrišite taskArray i for petlju u funkciji render. promijenite taskArray u div u this.state.taskArray.
Do sada bi vaš kod App.js trebao izgledati ovako:
pastebin.com/1iNtUnE6
Korak 3: Dodavanje načina dodavanja i uklanjanja objekata
Dodajmo način dodavanja i uklanjanja objekata. Isplanirajmo to.
Što trebamo?
- Način na koji korisnik dodaje objekte
- Mjesto za spremanje predmeta
- Način dohvaćanja objekata
Što ćemo koristiti?
- Element
- API za lokalnu pohranu s JSON -om
Počnimo s ulaznim elementom.
ispod {this.state.taskArray}, dodajte kod i gumb svom kodu
Dodati
Sada bi trebao postojati unos teksta i gumb Dodaj.
Trenutno ne radi ništa pa dodajmo 6 metoda našoj metodi aplikacije.
Potrebna nam je metoda kada se gumb pritisne, a također i kada netko unese unos. Također nam je potreban način za generiranje niza zadataka, kao i spremanje, učitavanje i uklanjanje zadataka.
dodajmo ovih 6 metoda:
buttonClick ()
inputTyped (evt)
generatedTaskArray ()
saveTasks (zadaci)
getTasks ()
removeTask (id)
dodajmo i ovu varijablu našem stanju:
ulazni
S tim također moramo vezati svoje funkcije.
pastebin.com/syx465hD
Počnimo dodavati funkcionalnost.
dodajte 2 atributa sličnom tako:
to znači da kada korisnik upiše bilo što u unos, izvršava funkciju.
dodajte atribut onClick u Dodaj ovako:
Dodati
kada korisnik pritisne gumb, funkcija se izvršava.
sad kad je html dio gotov, nastavimo s funkcionalnošću.
Već sam unaprijed napisao API sučelje localStorage, stoga zamijenite funkcije saveTasks, getTasks i removeTask s ovim:
pastebin.com/G02cMPbi
počnimo s inputTyped funkcijom.
kada korisnik upisuje, moramo promijeniti unutarnju vrijednost ulaza.
učinimo to pomoću funkcije setState koja je opremljena s React.
this.setState ({ulaz: evt.target.value});
na ovaj način možemo dobiti vrijednost ulaza.
nakon što to učinimo, možemo raditi na funkciji buttonClick.
moramo dodati zadatak na popis zadataka. prvo izvlačimo popis zadataka iz localStorage, uređujemo ga, a zatim spremamo. Zatim pozivamo ponovno iscrtavanje taskLista kako bismo ga ažurirali.
var taskList = this.getTasks ();
taskList.tasks.push (this.state.input);
this.saveTasks (taskList);
this.generateTaskArray ();
dobivamo zadatke, ubacujemo ulaznu vrijednost u zadatke, a zatim je spremamo. Zatim generiramo niz zadataka.
sada, poradimo na funkciji generatedTaskArray ().
moramo:
- dobiti zadatke
- stvoriti niz komponenti zadatka
- proslijedite komponente zadatka za iscrtavanje
možemo dobiti zadatke i pohraniti ih u varijablu s getTasks ()
var tasks = getTasks (). tasks
tada moramo stvoriti niz i popuniti ga.
pastebin.com/9gNXvNWe
sad bi trebalo raditi.
IZVORNI KOD:
github.com/bluninja1234/todo_list_instructables
DODATNE IDEJE:
Funkcija uklanjanja (vrlo jednostavno, dodajte onclick i izbrišite pomoću removeTask iz indeksa ključeva)
CSS (također jednostavno, napišite vlastiti ili upotrijebite bootstrap)
Preporučeni:
LoRa GPS Tracker Tutorial - LoRaWAN s Draginom i TTN -om: 7 koraka
LoRa GPS Tracker Tutorial | LoRaWAN S Draginom i TTN -om: Hej, što ima, dečki! Akarsh ovdje iz CETech -a. Nekoliko projekata unatrag imali smo pogled na LoRaWAN Gateway iz Dragina. Povezali smo različite čvorove s Gatewayom i prenijeli podatke s čvorova na Gateway koristeći TheThingsNetwork kao s
K40 Laser Cooling Guard Tutorial: 12 koraka
K40 Laser Cooling Guard Tutorial: K40 Laser Cooling Guard je uređaj koji mjeri protok i temperaturu rashladne tekućine lasera K40 Co2. U slučaju da brzina protoka padne ispod određene količine, zaštita od hlađenja prekida laserski prekidač sprječavajući pregrijavanje laserske cijevi
Kontrolne LED diode s Alexa ili IFTTT (SINRIC PRO TUTORIAL): 6 koraka
Kontrolne LED diode s Alexa -om ili IFTTT -om (SINRIC PRO TUTORIAL): Dakle, željeli biste biti ona osoba koja se pokaže tijekom obične večere izgovarajući " Alexa uključuje svjetlo? &Quot; Ovaj je projekt za vas! Na kraju ovih uputa moći ćete kontrolirati RGB traku s Alexa uređajem i IFTTT za
Raspberry Pi SHT25 Senzor vlažnosti i temperature Python Tutorial: 4 koraka
Raspberry Pi SHT25 Senzor vlažnosti i temperature Python Tutorial: SHT25 I2C Senzor vlažnosti i temperature ± 1,8%RH ± 0,2 ° C I2C mini modul. Senzor vlažnosti i temperature SHT25 visoke preciznosti postao je industrijski standard u pogledu oblika i inteligencije, pružajući kalibrirane, linearizirane signale senzora
SONOFF Dual Tutorial: Daljinsko upravljanje električnim aparatima pomoću MQTT -a i ubidota: 4 koraka
SONOFF Dual Tutorial: Daljinsko upravljanje električnim aparatima pomoću MQTT-a i Ubidots-a: Ovaj Wi-Fi relej od 9 USD može upravljati s dva uređaja istovremeno. Naučite kako ga spojiti na Ubidots i osloboditi njegov puni potencijal! U ovom vodiču naučit ćete kako kontrolirati nekoliko 110V uređaja preko Wi-Fi mreže za 9 USD, koristeći Iteadov SONOFF Dual