Sommarjobb + programmering = <3

Hey! Jag sommarjobbar på ABB i år likt förra sommaren. Tänker att jag skriver fler inlägg om det senare för det finns en massa kul att berätta. Kortfattat: jag är SÅ glad över detta jobb. Får koda ca 40h/vecka, på ett projekt som jag skapat från scratch efter ett önskemål. Drömmen ju! Projektet handlar om att skapa ett flexibelt webbgränssnitt för ’product managers’ att fylla i data om ABB-produkter. Kodar i React.js för frontend och C# för backend-stuff.

Just idag har jag skapat en sida för ’Document history’, dvs en slags versionslogg för varje projekt. Eftersom flera olika personer kommer redigera data hit och dit så är det viktigt att de kan hålla koll på vad som hänt och vem som har gjort det. 

För att ordna detta skapade jag en ny tabell i SQL-databasen och ett par testrader ( direkt i Microsoft SQL Server Management Studio) samt en funktion i C# som hämtar data. Knåpade ihop en ny React-komponent som fick heta så fint som . Däri hämtade jag data från SQL-tabellen via ett ajax-anrop till funktionen i C#-koden. Detta anrop gjordes i funktionen componentDidMount, som är en del av en Reactkomponentens livscykel. I komponentens render-funktion byggde jag upp en tabell med hämtad data och lät sista raden innehålla inputkomponenter för att kunna lägga till en ny versionslogg.

Min lösning fungerade fint! Åtminstone i de fall som det redan fanns sparad data för det projekt man är inne i. Visar lite av resultatet och processen nedan.

Trodde att jag var klar med funktionaliteten för Document History. Insåg sen att om jag öppnar ett projekt där inga uppgifter om olika versioner finns sparade så går det inte heller att lägga till något. Oups! Måste fixas.

Min kära loggbok. Här skriver jag ned uppgifter för dagen, buggar som dyker upp (som denna) och prioriteringslistor av plocka ifrån. Mot slutet av dagen försöker jag sammanfatta vad jag har fått gjort och vilka problem jag stött på. Kul att kunna kolla tillbaka på!

Letar i min kod efter orsaken till att inget visades. Ahh Såklart! Renderade bara tabellen ”if(this.state.allHistory.length > 0)”. Flyttade därför in den koden i en ’element variable’ istället. Har lärt mig flera sätt att lösa villkorlig rendering i React nu beroende på olika förutsättningar. Puh!

Sådär ja, nu fungerar det! Då tar vi helg 🙂

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *