Liste Sortable et Drag and Drop Angular | ng-hub-ui-sortable

Utilitaires sortable et drag-and-drop Angular pour les tableaux, l'intégration FormArray, les flux avec Signals et les listes connectées.

Référence API

Voici le contrat complet de sortable : tout ce que vous pouvez lier, écouter, projeter et personnaliser, réuni au même endroit. Branchez ce dont vous avez besoin et stylisez ce que vous voulez — c’est standalone et compatible avec les signals.

Inputs

Réglez sortable à votre goût avec 13 inputs. Liez-les comme n’importe quel @Input Angular.

NomTypePar défautDescription
hubSortableObligatoireT[] | FormArray | WritableSignal<T[]>Données liées au conteneur triable : un tableau simple, un `FormArray` réactif ou un signal modifiable. Reste synchronisé avec les opérations de glisser-déposer.
optionsOptionsObjet complet d'options SortableJS. Chaque option SortableJS peut aussi être liée directement comme son propre input (par exemple `handle`, `animation` ou `group`).
autoUpdateArraybooleantrueÀ `true` (par défaut), la directive met à jour automatiquement le tableau lié après chaque glissement. Mettez `false` pour un contrôle manuel et mettez le tableau à jour vous-même.
cloneFunction(item: T) => TFonction utilisée pour cloner un élément lorsque le groupe est configuré en mode `pull: 'clone'`.
containerstringSélecteur CSS de l'élément imbriqué qui doit devenir triable lorsque l'hôte enveloppe la liste réelle.
groupOptions['group']Nom ou objet de configuration du groupe pour connecter plusieurs listes et contrôler lesquelles peuvent céder ou recevoir des éléments.
sortbooleanActive ou désactive la réorganisation des éléments au sein de la liste.
handlestringSélecteur CSS de l'élément, à l'intérieur de chaque item, qui démarre le glissement, laissant le reste interactif.
draggablestringSélecteur CSS qui restreint les éléments enfants pouvant être glissés.
filterstring | ((event, target, sortable) => boolean)Sélecteur CSS (ou prédicat) marquant les éléments non déplaçables.
disabledbooleanDésactive le comportement triable sans retirer la directive.
animationnumberDurée en millisecondes de l'animation de réorganisation.
ghostClassstringClasse CSS appliquée au repère affiché pendant le glissement.

Outputs

Réagissez à ce que fait sortable — 13 événements sur lesquels accrocher votre logique.

NomTypeDescription
initSortableÉmis une fois l'instance SortableJS sous-jacente créée.
startSortableEventÉmis au début d'une opération de glissement.
endSortableEventÉmis à la fin d'une opération de glissement, quel que soit le résultat.
addSortableEventÉmis lorsqu'un élément est déposé dans cette liste depuis une autre.
updateSortableEventÉmis lorsqu'un élément change de position au sein de la même liste.
sortEventSortableEventÉmis chaque fois que l'ordre de la liste change (après `add` ou `update`).
removeSortableEventÉmis lorsqu'un élément quitte cette liste vers une autre.
filterEventSortableEventÉmis lorsqu'on tente de glisser un élément filtré (non déplaçable).
changeSortableEventÉmis lorsque la liste change suite à un ajout ou une suppression.
chooseSortableEventÉmis lorsqu'un élément est choisi (appui du pointeur).
unchooseSortableEventÉmis lorsqu'un élément est relâché sans avoir été glissé.
cloneSortableEventÉmis lorsqu'un élément est cloné en mode clonage.
moveSortableMoveEventPayloadÉmis en continu pendant le glissement ; sa valeur de retour peut contrôler si le déplacement est autorisé.

Templates

Aucun template documenté pour le moment.

Variables CSS

Aucune variable CSS documentée pour le moment.

Styles et theming

Aucun exemple de style n’est encore documenté. Cette section inclura des recettes de personnalisation et des exemples de theming.