Kirjoitin aiemmin olevani siirtämässä blogiani Angular-Fullstack-alustasta React-pohjaiseksi. Projekti eteni tänään, kun sain julkaistua blogistani uuden version. Se ei enää käytä Angular.js:ää lainkaan vaan pohjautuu React-Routeriin ja Angular-näkymistä muokattuihin React-komponentteihin.

Siirtymä oli suhteellisen helppo tehdä, koska blogissa ei ole kovinkaan paljon toiminnallisuutta. Se edellytti suurin piirtein seuraavia asioita:

  • Angularin $resource-objektit korvattiin omilla yksinkertaisilla jQuery-ajaxia käyttävillä komponenteilla.
  • Angularin $timeout, $location, $window ym. -objektit korvattiin selaimen sisäänrakennetuilla versioilla.
  • Angularin $cookieStore korvattiin jQuery.cookie -kirjastolla.
  • Angularin bootstrap korvattiin ReactRouter.run() -kutsulla, joka käynnistää sovelluksen.

Monimutkaisemmassa sovelluksessa olisi ollut ehkä syytä harkita Backbonea jQuery-ajaxin sijaan, mutta tässä tapauksessa en kaivannut sitä.

Alkuperäisestä Angular-Fullstack-sovelluksesta ovat edelleen käytössä Grunt-pohjainen julkaiseminen sekä Node.js-taustajärjestelmä, joka tallentaa artikkelit MongoDB:hen. Seuraavana suunnitelmissa on päästä eroon taustajärjestelmästä siten, että blogi toimisi ylläpitoa lukuunottamatta staattisesti Amazon S3:n varassa.

Published 8.7.2015