Fikk lekt en del med React i jula, og det er sannelig et imponerende bibliotek. Måten ting deles inn i komponenter, og ikke minst JSX-syntaksen, gjorde at jeg mange ganger tenkte «wow, dette er virkelig en smooth måte å gjøre ting på». Synes det blir veldig pen og oversiktlig kode.
React er som nevnt et bibliotek, ikke et helt rammeverk. Så det trengs litt mer for å få alt i hop, og her er det en del valgfrihet. Jeg kan jo nevne noe av det jeg har brukt i tillegg:
- react-router: For å få til ting som historikk, og å rute url-er til riktige komponenter.
- redux: Redux kan brukes som en variant av Flux. Flux er et pattern Facebook har utviklet, og som gjerne kan brukes med React, og Redux er veldig enkelt forklart enda bedre enn det igjen. Flyten med Redux kan oppsummeres slik; action->reducer->store->view (og views kan trigge actions). Dette tvinger frem gode valg mtp. flowen i appen, for React bruker enveisbinding og det sørger for at alle verdiene blir manipulert gjennom den samme flowen. Takk til flexd som viste meg denne, for jeg hadde egentlig startet med Flux.
- redux-simple-router: Støttebibliotek for å få redux til å spille på lag med react-router.
- redux-thunk: Middleware som er nyttig når man skal lage asynkrone actions (f.eks. når man må sende REST-kall).
- gulp: JavaScript-verktøy for blant annet å bygge koden. Koden kjøres gjennom transformasjonen babelify for å få støtte for EcmaScript 6-features og reactify for å compile JSX til JS.