Ce serait pratique de définir une hauteur minimale !
Mais le bouton ajouter un aliment ( qui est fonctionnel sur mon ordi ) permet d'ajouter autant d'aliments que l'on souhaite.
J'ai donc essayé d'améliorer nom code
Nouvelle variable:
const [mealsList, setMealsList] = useState(null)
Initialisée dans le dragStart:
setMealsList(document.querySelectorAll(".name"))
Utilisée dans le dragOver:
mealsList[draggedIndex].style.height = `${mealsList[index].offsetHeight}px`
Puis dans le dragEnd:
Array.from(mealsList).map(element => element.removeAttribute('style'))
Dans le sens "glisser vers le haut" un repas vide d'aliments, le rendu est fluide.
Mais lorsqu'il faut redescendre, la taille de l'élément augmente d'abord ( d'où un effet de pousser vers le bas de la cible ) et ensuite on va pouvoir glisser.
Ce serait mieux dans l'ordre inverse, mais je ne vois pas comment m'y prendre.
Partager