# j-Releaser

> Komponent môže po určitom čase uvoľniť vlastný obsah (DOM) + pamäť. Odporúčame použiť pre j-DataGrid, j-CodeMirror, j-CloudEditor atď.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: sk
Content-SHA256: 09132bd2ebd67333150f47549b87d86e6b88d6d7b69baaa0152cf0f019ac61b0
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

Komponent môže po určitom čase uvoľniť vlastný obsah (DOM) + pamäť. Odporúčame použiť pre `j-DataGrid`, `j-CodeMirror`, `j-CloudEditor` atď.


__Konfigurácia__:

- `if {String}` musí obsahovať hodnotu pre porovnanie s modelom
- Oneskorenie `delay {Number}` na odstránenie triedy `invisible` (predvolené: `500`)
- Oneskorenie `release {Number}` pre uvoľnenie obsahu v čase nečinnosti (predvolené: `10000`)
- `bindvisible {Boolean}` vyhodnotí obsah, ak je komponent viditeľný (predvolené: `false`)
- `released {String}` odkaz na `function(component_element)` po zverejnení obsahu
- `render {String}` odkaz na `function(component_element)`, keď sa obsah vykreslí

__Príklad__:

```html
<ui-component name="releaser" path="common.form" config="if:userform">
	<script type="text/html">
		<ui-component name="datagrid" path=".......">
			<SCR type="text/html">
				YOUR COLUMNS
			</SCR>
		</ui-component>
	</script>
</
```

Použite ho so `<ui-component name="releaser">`. 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.

```html example.html
<ui-component name="exec"></ui-component>

<ui-component name="releaser" path="common.form" config="if:userform;release:2000">
	<script type="text/html">
		<i class="ti ti-thumbs-up"></i> THE CONTENT IS RENDERED
	</script>
</ui-component>
<hr />
<button class="exec" data-exec="releaser_show">Show</button>
<button class="exec" data-exec="releaser_release">Release (2 sec)</button>

<script>
	function releaser_show() {
		SET('common.form', 'userform');
	}

	function releaser_release() {
		NUL('common.form');
	}
</script>
```
