ForgeComposants
fr

Composants

j-Kanban

jComponent 20 · jcomponent@20 component Exemple chargé avec jComponent 20

Configuration :

  • parent {String} un conteneur à hauteur fixe, peut être window. Valeur par défaut : élément parent.
  • margin {Number} une marge supérieure/inférieure ensemble (par défaut : 0)
  • padding {Number} un rembourrage entre les panneaux (par défaut : 10)
  • style {Number} un style, 1 (par défaut) : les boîtes auront une pleine hauteur, les boîtes 2 auront max-height
  • move {String} un chemin vers la méthode function(group, target), est exécuté si l'utilisateur déplace un élément vers un autre groupe
  • remove {String} un chemin vers la méthode function(group), est exécuté si l'utilisateur supprime un élément du groupe
  • dblclick {String} un chemin vers la méthode function(group), est exécuté si l'utilisateur effectue un double clic

Méthodes :

  • component.remove(id) peut supprimer un élément du groupe
  • component.findgroup(id) renvoie une instance de groupe

Important : chaque élément a besoin de son propre ID {String}, regardez l'exemple.

Utilisez-le avec <ui-component name="kanban">. Lorsque le composant n'est pas encore chargé, jComponent le télécharge lors de la première utilisation depuis l'adresse dans DEF.fallback (le CDN Componentator par défaut). Auteur : Peter Širka. Source : le référentiel de composants Componentator, licence 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>