ForgeKomponenty
sk

Komponenty

j-Kanban

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

Konfigurácia:

  • parent {String} kontajner s pevnou výškou, môže byť window. Predvolená hodnota: Prvok parent.
  • margin {Number} horný/dolný okraj spolu (predvolené: 0)
  • padding {Number} výplň medzi panelmi (predvolené: 10)
  • style {Number} štýl, 1 (predvolené): krabice budú mať plnú výšku, krabice 2 budú mať max-height
  • move {String} cesta k metóde function(group, target), ktorá sa vykoná, ak používateľ presunie položku do inej skupiny
  • remove {String} cesta k metóde function(group), ktorá sa vykoná, ak používateľ odstráni položku v skupine
  • dblclick {String} cesta k metóde function(group), ktorá sa vykoná, ak používateľ dvakrát klikne

Metódy:

  • component.remove(id) môže odstrániť položku v skupine
  • component.findgroup(id) vráti inštanciu skupiny

Dôležité: každá položka potrebuje vlastné ID {String}, pozrite si príklad.

Použite ho so <ui-component name="kanban">. 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
<style>
	.caption { line-height: 50px; border-bottom: 1px solid #E0E0E0; padding: 0 10px; font-weight: bold; }
	.ui-dark .caption { border-bottom-color: #404040; }
</style>

<ui-component name="kanban" path="items" config="parent:window;move:onmoveitem;margin:50">

	<!-- Group header rendering -->
	<script type="text/html">
		<div class="caption">{{ name }}</div>
	</script>

	<!-- Item rendering -->
	<script type="text/html">
		<div>{{ name }}</div>
	</script>
</ui-component>

<script>

	var items = [];
	items.push({ id: '1', name: 'In progress', items: [{ id: '11', name: 'Better life Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ea culpa voluptatem asperiores aspernatur doloremque cupiditate error, qui sit est quas.' }] });
	items.push({ id: '2', name: 'Pending', items: [{ id: '21', name: 'Improve j-ChunkyScroll' }] });
	items.push({ id: '3', name: 'Done', items: [{ id: '31', name: 'Fix scrollbars j-DataGrid' }, { id: '32', name: 'Improve performace' }] });

	function onmoveitem(group, target) {
		console.log('MOVEMENT:', group, target);
	}

</script>