Я работаю над новым угловым приложением, и мне нужен сортируемый компонент. Сначала я попытался найти что-то уже готовое, но нашел только тяжелые решения, такие как:

Конечно, я мог бы делать то, что мне нужно, но мне пришлось бы встраивать тысячи строк кода, а иногда и огромные зависимости, например, jQuery.

Моя потребность была простой, просто иметь возможность перетаскивать плитки, чтобы изменить их порядок. И теперь есть HTML API перетаскивания, доступный во всех современных браузерах (http://caniuse.com/#feat=dragndrop)

Поэтому я решил создать свою собственную директиву для сортировки, используя только HTML5 API. Использование этого API дает множество преимуществ

  • Несколько строк кода
  • Перетащите дескриптор призрачных изображений браузером
  • Ручка автоматической прокрутки в браузере
  • Отменить перетаскивание с помощью дескриптора клавиши escape в браузере

Я не делал компонент npm, просто простой плункер https://embed.plnkr.co/sdeK21bBags5RlFOtLte/, если вы хотите посмотреть