React Native: Cross-platform mobilutvikling med JavaScript
Bygg native iOS- og Android-apper med én kodebase — en guide til React Native og Expo for norske utviklere.

React Native lar JavaScript-utviklere bygge ekte native mobilapplikasjoner for iOS og Android fra én kodebase.
Komplett guide til React Native: historikk, Expo-rammeverket, sammenligning med Flutter, og hvordan norske selskaper bruker teknologien i dag.
React Natives opprinnelse hos Facebook
React Native ble født ut av et internt hackathon hos Facebook i 2013. Ingeniørene eksperimenterte med å bruke React — det deklarative UI-rammeverket de hadde laget for nett — til å bygge native mobilapper. Resultatet var overraskende bra: ved å bruke Facebooks JavaScript-bro kunne React-komponenter mappe direkte til native iOS og Android-komponenter, i motsetning til hybrid-løsninger som Cordova som bare pakket en nettside inn i en native container.
I januar 2015 presenterte Tom Occhino og Christopher Chedeau React Native på React.js Conf, og to måneder senere ble rammeverket sluppet som åpen kildekode. Mottakelsen var enorm — for millioner av JavaScript-utviklere åpnet dette døren til mobilutvikling uten å lære Kotlin eller Swift fra bunnen av. Filosofien "Learn once, write anywhere" (ikke "write once, run anywhere") anerkjente at iOS og Android har ulike designkonvensjoner.
Arkitektur: Bro-modellen og den nye arkitekturen
Den opprinnelige React Native-arkitekturen brukte en "bro" mellom JavaScript og native kode. Denne broen var asynkron og serialiserte data via JSON mellom de to verdenene — noe som fungerte bra for de fleste brukstilfeller, men skapte ytelsesflaskehalser ved hyppige UI-oppdateringer eller komplekse animasjoner.
I 2024 ble den nye arkitekturen standard i React Native 0.73+. Den introduserer JSI (JavaScript Interface) for synkrone native anrop, Fabric som ny UI-renderer, og TurboModules for lat lasting av native moduler. Disse endringene gjør React Native langt mer ytelsesdyktig og javaScript-native-integrasjonen langt tettere enn tidligere.
- JSI: Direkte JavaScript-til-native binding uten JSON-serialisering
- Fabric: Asynkron, concurrent UI-renderer som støtter React 18 Concurrent Mode
- TurboModules: Lazy-loaded native moduler for raskere oppstart
- Codegen: Automatisk generering av type-sikker native interface-kode
- Bridgeless mode: Fjerner den gamle broen helt for maksimal ytelse
Expo: Det foretrukne React Native-rammeverket
Expo er et sett med verktøy og tjenester bygget rundt React Native som gjør utviklingen dramatisk enklere. Med Expo trenger du ikke installere Xcode eller Android Studio for å se appen din kjøre på en ekte enhet — du skanner bare en QR-kode med Expo Go-appen. Expo SDK gir tilgang til kameraet, GPS, push-varsler, akselerometer og hundrevis av andre native funksjoner med minimal konfigurasjon.
Expo Application Services (EAS) er Expos skybaserte build- og distribusjonstjeneste. Med EAS Build kan du kompilere iOS-apper uten en Mac, og med EAS Submit kan du publisere direkte til App Store og Google Play. For norske startups og konsulentselskaper som ikke ønsker å sette opp og vedlikeholde CI/CD-infrastruktur for mobilapper, er EAS en svært attraktiv løsning.
"Expo har redusert tiden fra idé til publisert app i butikkene fra uker til dager for teamet vårt."
React Native i tall
React Native er et av de mest brukte rammeverkene for mobilutvikling globalt, og nyter særlig stor popularitet blant JavaScript-orienterte utviklerteam.
React Native vs Flutter: Nøkkelforskjeller
Sammenligningen mellom React Native og Flutter er en av de mest diskuterte i mobilutviklingsmiljøet. React Native bruker native UI-komponenter — en Button ser ut som en iOS-knapp på iOS og en Material Design-knapp på Android, noe som gir en autentisk plattformfølelse. Flutter tegner derimot alle UI-komponenter selv via Skia/Impeller-grafikkmotoren, noe som gir perfekt konsistens på tvers av plattformer, men fjerner seg fra native look-and-feel.
For JavaScript-erfarne team er React Native en naturlig vei — man bruker JavaScript/TypeScript, og React-kunnskapen er direkte overførbar. Flutter krever Dart, et relativt lite kjent språk. Googles sterke backing av Flutter (brukes i Google Pay og andre Google-produkter) gir trygghet for langsiktig vedlikehold. I Norge ser vi at React Native dominerer hos team med React-bakgrunn fra web, mens Flutter vinner terreng hos rene mobilteam.
React Native i norsk næringsliv
Flere norske selskaper og konsulentselskaper bruker React Native aktivt. Bekk, Bouvet og Computas er blant konsulentselskapene som har React Native i verktøykassen. I produktselskaper er det spesielt vanlig i oppstartsfasen, der ett team ønsker å nå både iOS og Android uten å ansette separate native-team.
Visse segmenter er spesielt egnet for React Native i norsk kontekst: intern enterprise-programvare, MVP-er (minimum viable products) for norske startups, og apper med moderate ytelseskrav. For apper som trenger dyp hardware-integrasjon, avanserte animasjoner eller spesielt høy ytelse, er native Kotlin/Swift eller Flutter ofte et bedre valg.
Fremtiden for React Native
Den nye arkitekturen, React 18-integrasjon og den sterke Expo-plattformen gjør React Native til et modent og fremtidsrettet valg i 2026. React Native for Web og React Native Windows/macOS (Microsoft-bidrag) gjør det mulig å gjenbruke kode enda bredere. Merging med React Server Components er under utforskning.
For norske utviklere som allerede kan React for web, er investeringen i React Native relativt lav med høy avkastning — spesielt med Expo som forenkler de mest krevende delene av native-utvikling. Teknologien er godt posisjonert for de neste fem til ti år.
Ofte stilte spørsmål
Hva handler «React Native: Cross-platform mobilutvikling med JavaScript» om?
Komplett guide til React Native: historikk, Expo-rammeverket, sammenligning med Flutter, og hvordan norske selskaper bruker teknologien i dag.
Hva bør du vite om react Natives opprinnelse hos Facebook?
React Native ble født ut av et internt hackathon hos Facebook i 2013. Ingeniørene eksperimenterte med å bruke React — det deklarative UI-rammeverket de hadde laget for nett — til å bygge native mobilapper. Resultatet var overraskende bra: ved å bruke Facebooks JavaScript-bro kunne React-komponenter mappe direkte til native iOS og Android-komponenter, i motsetning til hybrid-løsninger som Cordova som bare pakket en nettside inn i en native container.
Hva bør du vite om arkitektur: Bro-modellen og den nye arkitekturen?
Den opprinnelige React Native-arkitekturen brukte en "bro" mellom JavaScript og native kode. Denne broen var asynkron og serialiserte data via JSON mellom de to verdenene — noe som fungerte bra for de fleste brukstilfeller, men skapte ytelsesflaskehalser ved hyppige UI-oppdateringer eller komplekse animasjoner.
Hva bør du vite om expo: Det foretrukne React Native-rammeverket?
Expo er et sett med verktøy og tjenester bygget rundt React Native som gjør utviklingen dramatisk enklere. Med Expo trenger du ikke installere Xcode eller Android Studio for å se appen din kjøre på en ekte enhet — du skanner bare en QR-kode med Expo Go-appen. Expo SDK gir tilgang til kameraet, GPS, push-varsler, akselerometer og hundrevis av andre native funksjoner med minimal konfigurasjon.
Hva bør du vite om react Native i tall?
React Native er et av de mest brukte rammeverkene for mobilutvikling globalt, og nyter særlig stor popularitet blant JavaScript-orienterte utviklerteam.
Hva bør du vite om react Native vs Flutter: Nøkkelforskjeller?
Sammenligningen mellom React Native og Flutter er en av de mest diskuterte i mobilutviklingsmiljøet. React Native bruker native UI-komponenter — en Button ser ut som en iOS-knapp på iOS og en Material Design-knapp på Android, noe som gir en autentisk plattformfølelse. Flutter tegner derimot alle UI-komponenter selv via Skia/Impeller-grafikkmotoren, noe som gir perfekt konsistens på tvers av plattformer, men fjerner seg fra native look-and-feel.
Redaksjonell merknad: Dette innholdet er utarbeidet av Norsk Næring med hjelp av kunstig intelligens og kvalitetssikret av redaksjonen. Informasjonen er ment som generell veiledning og erstatter ikke profesjonell rådgivning. Feil eller unøyaktigheter? Kontakt oss på help@norsknæring.no.





