11. My article : JavaScript

Zakladni info

  • js je psan v coffee a require, je nutne mit rozjety coffee u sebe (pres npm)
  • pro produkci se vse 'kompiluje' do vysledneho balicku, viz kompilace
  • jak proudkce tak devel obsahuje v kazdem requestu ?v=$verze => neni treba resit invalidaci cache
    • v produkci je $verze cislo buildu/commitu
    • v develuj e $verze timestamp 

JS pro vyvoj

  • ve vychozim stavu se zavadi JS pro produkci
  • JS pro devel prepnu takto:
    • upravit <tomcatDir>/conf/application.properties pridat systemPreferences.jsLazyLoad=false

    • nebo rucne upravit switch na konci tags/page/generic/mainPage.tag
  • Pak browser nacita co soubor to request

Kompilace

  • Pri preklapeni develu na produkci je treba zkompilovat novy balik production
  • Kompilaci provadi r.js (viz dokumentace require.js)
  • Kompilace se ridi souborem js/build.js ktery co do obsahu se ridi dokkumentaci r.js
  • Vse dela skript js/build.sh - staci pustit
  • Vse commitnout jako solo commit