JSFiddle - React, Tailwind, and code Playground

by Виталий Инчин

HTML

<ul>
  <li data-category-id="1" data-category-parent-id="">Корневая 1</li>
  <li data-category-id="2" data-category-parent-id="1">В 1</li>
  <li data-category-id="3" data-category-parent-id="">Корневая 3</li>
  <li data-category-id="4" data-category-parent-id="">Корневая 4</li>
  <li data-category-id="5" data-category-parent-id="1"> В 1</li>
  <li data-category-id="6" data-category-parent-id="">Корневая 6</li>
  <li data-category-id="7" data-category-parent-id="">Корневая 7</li>
  <li data-category-id="8" data-category-parent-id="3">В 3</li>
  <li data-category-id="9" data-category-parent-id="6">В 6</li>
  <li data-category-id="10" data-category-parent-id="6">В 6</li>
</ul>

JavaScript

$('li[data-category-parent-id=""]').each(function(){
      $(this).append("<ul></ul>");
});

$("li").each(function(){
  var dts = this.dataset.categoryParentId;
  dts&&$("li[data-category-id="+dts+"] > ul").append(this);
});