README.md 3.46 KB

devausnoteja

Devaus

Testaus

Kehittämisen nopeuttamiseksi kannattaa frontti käynnistää erikseen ja ajaa sitä proxyn läpi halutulle backendille.

Käyttö:

  • npm run localhost : Käynnistä frontend paikallista palvelinta vasten (localhost:8080)
  • npm run testserver : Käynnistä frontend meidän testipalvelinta vasten (https://ng.test.moya.fi)

Tämän jälkeen surffaa selaimellasi moyaan: http://localhost:4200/

Esteettömyys

Tabindex

Tehtyjä sivuja pitää kokeilla myös surffaamalla niitä läpi tabilla. Jos järjestys on outo, niin tabindex -elementti on avuksi.

Sivun menuvalikot käyttävät indexejä 10:n alta. (8: Login & kieli, 9: ylämenu, 10: vasenmenu).

click

Jos pistät linkkiin pelkän (click) -tagin, sitä ei voi painaa näppäimistöllä. (esim: <a (click)=...><img>...</>), Tyhjällä [routerLink]="" -tagilla saat kerrottua selaimelle "tähän voi mennä ja tätä voi painaa".

Koodijuttuja

Koodaustyyli

Meillä on käytössä kohtuu tiukka lintteri, ennen committamista kannattaa ajaa ng lint ja korjata virheet. ng lint moya-angular --fix on ystävämme.

Hakemistohierarkia

  • app
    • components Componentit joidenka ei ole järkeä olla omia lazyloadattavia moduuleita
    • modules Kokonaisuuksia jotka on järkeä jakaa omaksi lazyloadattavaksi kokonaisuudekseen.
    • viplist Esimerkki vain info ja admin -puoella näkyvästä vippilista -moduulista
      • viplist.module
      • info
      • info-viplist-page.component Infopuolen landing -sivu. Tämä on routing component info -vippilistasta
      • admin
      • admin-viplist-page.component
      • models
      • viplist.model
    • pizza Esimerkki moduulista joka näkyy kaikilla puolilla
      • pizza-user
      • pizza-user.component
      • pizza-user.service
      • pizza-user.module
      • pizza-manager
      • pizza-admin.component
      • pizza-info.component
      • pizza-manager.module
      • pizza-manager.service
      • common
      • pizza-list.component (shared for user / admin pizza)
      • models
      • pizza.model
    • shared Resurssit jotka ovat käytössä vähän kaikkialla. Esim. käyttäjää on turha jakaa minkään erillisen moduulin alle
    • components
    • services
    • models
    • auth

##Routing Tämä pitää vielä miettä läpi

  • info
    • info routing johon tulee pizza-user.module LL
    • pizza-info.component & pizza-manager.service
  • admin
    • pizza-admin.component & pizza-manager.service
  • user
    • pizza-user.component & pizza-user.service

I18N & Localization

Kieleistyksessä on käytössä ngx-translate. (koska angularin oma kieleistys oli rikki kieleistyksen toteutushetkellä). Lokalisointi -tukea ei vielä ole.

Kielitiedostot sijaitsevat: assets/i18n -hakemistossa. You figure it out how they works.

TODO

Tekemistä jota voi esim kämpissä säätää

Paketointi

Miten paketoidaan moya niin että mukaan kääntyy myös angular -jutukkeet?

Lazy loading

Lazy loading niin että se toimii vielä moyan kanssa, vaatinnee säätöä.

Travis yms. autotestit

oma travis-palvelin, ja siihen autotestit Ehkä greenkeeper, jos sitä voi hostata ite

Testit

Integraatio jne. testit, aloitteliat ei riko asioita niin todennäköisesti.

WebPack ja buildin minimointi

aot-kääntäminen ja siihen comperssointia jne.

HMR

HMR -asetukset löytyy, niistä ei nykyisellään ole mitään hyötyä. Saa poistaa.