Dynamisch scripts laden
De loader is de brug tussen Planon en de gecentraliseerde library.
De loader bevat geen businesslogica. Hij beantwoordt drie vragen:
- Welke Planon-context is actief?
- Welke gedeelde scripts zijn nodig?
- Welk formulier-specifiek script moet worden geladen?
Runtime-flow
Planon-pagina opent
│
▼
loader.js start
│
├── laad shared/functions.js
├── laad shared/timing.js
│
└── detecteer actief formulier
│
▼
laad forms/FORM_001.js
Vereenvoudigd publiek voorbeeld
const formCode = getActiveFormCode();
loadScript("/shared/functions.js");
loadScript("/shared/timing.js");
loadScript(`/forms/${formCode}.js`);
De echte implementatie gebruikte de actieve Planon-context om te bepalen welke module moest draaien.
Waarom deze architectuur hielp
Zonder loader:
elk formulier
↓
meer ingebedde logica
↓
meer duplicatie
↓
moeilijker updates
Met loader:
Planon-formulier
↓
kleine loader
↓
centrale shared-modules
+
één formulier-specifieke module
Zo ontstond een duidelijke scheiding tussen runtime-selectie en businessgedrag.
Centrale delivery
Omdat de loader formulieren verbindt met centraal beheerde JavaScript, kunnen updates via de Azure-pipeline worden geleverd in plaats van de volledige implementatie handmatig in elk formulier te plaatsen.