Moduly na straně klienta a na straně webu
Last updated
Last updated
Moduly plug-in aplikace FormIt využívají dva odlišné moduly jazyka JavaScript:
Panel zobrazující HTML (na straně webu)
Klientská strana (FormIt) volá aplikaci FormIt a její geometrické jádro.
Tyto dva moduly jazyka JavaScript využívají různé procesy.
Aplikace FormIt spustí současně více modulů jazyka JavaScript:
Aplikace FormIt má vlastní modul jazyka JavaScript.
Každý panel nástrojů modulu plug-in má vlastní modul JavaScript.
Každý panel modulu plug-in má vlastní modul JavaScript (Chromium).
Moduly plug-in mohou určovat, kde se JavaScript načte:
Určeno pomocí souboru manifest.json.
Určeno pomocí souboru index.html.
Skripty na webové straně se načítají z webové stránky.
Skripty na webové straně mohou volat JavaScript na straně klienta (FormIt) pomocí několika asynchronních volání.
CallMethod
přijímá název funkce a argumenty, které budou spuštěny na straně aplikace FormIt. Předávaná funkce bude volána s výsledkem volání funkce.
Výhody:
➕ Není nutný parametr await
.
Nevýhody:
➖ K získání výsledku je zapotřebí zpětné volání, které se volá „kdo ví kdy“.
➖ Skripty jsou definovány na dvou různých místech.
➖ Logiku modulu plug-in je nutné rozdělit do dvou různých souborů.
*K dispozici pouze ve verzi aplikace FormIt 2022.1 a novějších.
CallJS převezme funkci jazyka JavaScript, která bude volána na straně aplikace FormIt, a objekt arguments.json.
Výhody:
➕ Výsledek je k dispozici v případě potřeby
Nevýhody:
➖ **** Všechna asynchronní volání vyžadují parametr await, pokud na to zapomenete, nebude skript fungovat.
➖ **** Potenciálně pomalejší z důvodu nutnosti použití parametru await
.
Při asynchronním volání webová strana volá aplikaci FormIt. Toto volání se spustí v jednom procesu, odešle se do jiného procesu a výsledek se předá zpět do výchozího procesu. Proto je potřeba argument await.
Ve výchozím nastavení lze volat pouze integrovaná rozhraní API aplikace FormIt.
Výhody:
➕ Výsledek je k dispozici v případě potřeby.
➕ Umožňuje sloučit veškerý kód do jednoho souboru JS spouštěného ze strany webu bez skriptů definovaných v souboru manifest.json.
Nevýhody:
➖ **** Všechna asynchronní volání vyžadují parametr await
, pokud na to zapomenete, nebude skript fungovat.
➖ **** Potenciálně pomalejší z důvodu nutnosti použití parametru await.
.
*K dispozici pouze ve verzi aplikace FormIt 2023.0 a novějších.
Chcete-li na straně aplikace FormIt volat uživatelem definovanou funkci, je nutné tuto funkci zaregistrovat. Příklad:
Klientská strana (FormIt)
Webová strana (HTML)
Příklad viz HelloBlockAsync.
Výhody:
➕ Výsledek je k dispozici v případě potřeby.
➕ Umožňuje sloučit veškerý kód do jednoho souboru JS spouštěného ze strany webu bez skriptů definovaných v souboru manifest.json.
Nevýhody:
➖ **** Všechna asynchronní volání vyžadují parametr await, pokud na to zapomenete, nebude skript fungovat.
➖ **** Potenciálně pomalejší z důvodu nutnosti použití parametru await.
.