aitom-module
TypeScript icon, indicating that this package has built-in type declarations

0.0.2 • Public • Published

aitom-module

Aitom module je abstraktní předek pro jednotlivé modulové JS/TS.

Instalace

npm i --save aitom-module

Použití

Od této třídy musí všechny modulové JS dědit aby fungovalo správně jejich automatické načítání.

Tato třída předepisuje dvě abstraktní metody a to: initOnLoad a initAlways, které musí implementovat každý z modulových JS.

initOnLoad

Jak už by měl název napovědět initOnLoad se volá při prvním načtení stránky kde se modul vyskytuje.

Pokud dojde k refreshy stránky metoda se tedy opět zavolá, protože z pohledu prohlížeče se to jeví jako první načtení. Pokud na stránku modulu příjdu poprvé z ajaxového požadavku metoda se také zavolá, protože instance modulu ještě neexistuje a opět se to bere jako první načtení.

Pokud už ovšem už došlo k zavolání této metody a stránka modulu je přenačtena ajaxově metoda už se znovu nezavolá.

initAlways

Oproti tomu initAlways se volá vždy kdy initOnLoad navíc ale ještě při každém úspěšně dokončeném ajaxovém požadavku.

Tato metoda se proto používá pro akce, které potřebují provést reinicializaci i po ajaxovém requestu.

Ukázka použití

Modulový TS

import Module from 'aitom-module';

export default class MyCustomModule extends Module 
{
    public initOnLoad():void
    {
        this.initWhatEverYouWant();
    }
    
    public initAlways():void
    {
        this.initSomenthingElse();
    }
    
    private initWhatEverYouWant():void
    {
        // something initialize here
    }
    
    private initSomenthingElse():void
    {
        // initialize something else which needs reinitialize after ajax
    }
}

Modulové Latte

V Latte modulu stačí uvést například span element s příslušnou třídou js_aitomModule a patřičně vyplněným data atributem module

<span class="js_aitomModule" data-module="MyCustomModule"></span>

Readme

Keywords

Package Sidebar

Install

npm i aitom-module

Weekly Downloads

1

Version

0.0.2

License

SEE LICENCE IN LICENCE.txt

Unpacked Size

12.1 kB

Total Files

7

Last publish

Collaborators

  • aitom