Я работаю с jQuery Sortable для создания некоторого блока кодов с вложенным списком (для цикла и функционального блока), затем я получил эту строку json, используя JSON.stringify для console.log (jsonString):
{
"codes": [
[
{
"id": "code_run",
"code": "run",
"name": "code_when_run"
},
{
"id": "",
"code": "loop",
"name": "code_block_repeat",
"children": [
[
{
"id": "",
"code": "up",
"name": "code_arrow_up"
},
{
"id": "",
"code": "up",
"name": "code_arrow_up"
}
]
]
}
]
]
}
Вот мой код из примера сортировки jQuery:
let oldContainer, codeBlockId, codeBlockItem;
$("ol.nest_workspace").sortable({
group: 'nested',
onDragStart: function ($item, container, _super) {
// Duplicate items of the no drop area
if(!container.options.drop)
$item.clone().insertAfter($item);
_super($item, container);
},
afterMove: function (placeholder, container) {
if(oldContainer != container){
if(oldContainer)
oldContainer.el.removeClass("active");
container.el.addClass("active");
oldContainer = container;
}
},
onDrop: function ($item, container, _super) {
container.el.removeClass("active");
$item.addClass("block_code_on_workspace");
var data = group.sortable("serialize").get();
var jsonString = JSON.stringify({"codes":data}, null, '\t');
console.log(jsonString);
_super($item, container);
},
});
Как мне обработать подмассив (children [])?
Я планирую сделать все это блоком в виде реальных кодов, чтобы он мог выполняться с другой функцией.
Я могу ожидать, что при выводе текста будет напечатана какая-то функция, такая как moveUp () или если ее цикл с какой-то функцией внутри, тогда будет выглядеть так:
for (var i = 0; i < 3; i++) {
moveUp();
}
Любая помощь или предложение было бы здорово, спасибо!