ForgeKomponenty
sk

Komponenty

j-Importer

jComponent 20 · jcomponent@20 component Príklad načítaný s jComponent 20

j-Import je skvelý komponent na importovanie HTML šablón, skriptov alebo štýlov podľa cesty a podmienky. Komponent môže pomôcť s aplikáciami SPA, pretože môžete jednoducho dynamicky importovať šablóny, skripty alebo štýly.


Konfigurácia:

  • if {String} musí obsahovať hodnotu
  • url {String} relatívne/absolútne URL na podstránku alebo podčasť
  • reload {String} odkaz na metódu v globálnom rozsahu, vykoná sa, ak je platná podmienka
  • cleaner {Number} (voliteľné) čas nečinnosti (v minútach) pre spustenie čistenia (predvolené: 0)
  • clean {String} (voliteľné) prepojenie na funkciu, vykoná sa pred vyčistením importéra
  • id {String} vlastný identifikátor na nahradenie fráz ~ID~ v importovanom HTML (predvolené: prázdne)
  • NEW: singleton {Boolean} spracováva iba jednu inštanciu dovozcu podľa path + if + url (predvolené: false)
  • NOVINKA: parent {String} sa pohybuje ako priame dieťa voliča parent
  • NEW: adapt {Boolean} ak true volá metódu reload:?/soemthing pre vnorený doplnok namiesto aktuálneho doplnku (predvolené: false)

Nová aktualizácia:

j-Importer môže obsahovať <script type="text/html"> s obsahom, ktorý bude v prípade platnosti podmienky vyhodnotený ako HTML.

Je dobré vedieť 1:

  • všetky frázy CLASS a ~PATH~ budú automaticky nahradené výrazmi config.path alebo config.if
  • všetky frázy ~ID~ budú automaticky nahradené frázami config.id
  • importér automaticky nahradí prvky <SCR> na prvky <script> iba v rámci šablóny <script type="text/html">

Je dobré vedieť 2:

Ak komponent dielu nie je v rozsahu, potom hodnota zo config.if nahradí znaky ? vo všetkých konfiguračných kľúčoch.

Použite ho so <ui-component name="importer">. Keď komponent ešte nie je načítaný, jComponent ho stiahne pri prvom použití z adresy v DEF.fallback (predvolene CDN Componentator). Autor: Peter Širka. Zdroj: úložisko komponentov Componentator, licencia MIT.

example.html
<div>CURRENT VALUE: <ui-bind path="myvalue" config="html:value"></ui-bind></div>
<ui-component name="importer" path="myvalue" config="if:d3;url:https://d3js.org/d3.v4.min.js"></ui-component>

<script>

	var myvalue = '';

	setTimeout(function() {
		SET('myvalue', 'd3');
	}, 3000);

	setTimeout(function() {
		SET('myvalue', null);
	}, 5000);

	setTimeout(function() {
		// The component contains prevention for double import, so D3 won't be imported again.
		SET('myvalue', 'd3');
	}, 8000);

</script>