# Bygg en bankapp Del 1: HTML-mallar och rutter i en webbapplikation ## Förföreläsningsquiz [Förföreläsningsquiz](https://ff-quizzes.netlify.app/web/quiz/41) ### Introduktion Sedan JavaScript introducerades i webbläsare har webbplatser blivit mer interaktiva och komplexa än någonsin. Webbteknologier används nu ofta för att skapa fullt fungerande applikationer som körs direkt i en webbläsare, vilket vi kallar [webbapplikationer](https://en.wikipedia.org/wiki/Web_application). Eftersom webbapplikationer är mycket interaktiva vill användare inte vänta på att hela sidan ska laddas om varje gång en åtgärd utförs. Därför används JavaScript för att uppdatera HTML direkt via DOM, vilket ger en smidigare användarupplevelse. I denna lektion ska vi lägga grunden för att skapa en bankapplikation, med HTML-mallar för att skapa flera skärmar som kan visas och uppdateras utan att hela HTML-sidan behöver laddas om. ### Förkunskaper Du behöver en lokal webbserver för att testa webbapplikationen vi ska bygga i denna lektion. Om du inte har en, kan du installera [Node.js](https://nodejs.org) och använda kommandot `npx lite-server` från din projektmapp. Det skapar en lokal webbserver och öppnar din app i en webbläsare. ### Förberedelse På din dator, skapa en mapp som heter `bank` med en fil som heter `index.html` inuti. Vi börjar med denna HTML [grundstruktur](https://en.wikipedia.org/wiki/Boilerplate_code): ```html Bank App ``` --- ## HTML-mallar Om du vill skapa flera skärmar för en webbsida kan en lösning vara att skapa en HTML-fil för varje skärm du vill visa. Men denna lösning har vissa nackdelar: - Du måste ladda om hela HTML-filen när du byter skärm, vilket kan vara långsamt. - Det är svårt att dela data mellan de olika skärmarna. Ett annat tillvägagångssätt är att ha endast en HTML-fil och definiera flera [HTML-mallar](https://developer.mozilla.org/docs/Web/HTML/Element/template) med hjälp av `