Рекурсия
codepen.io/Zoxon/pen/zBPBbW?editors=1000#0{
"title": "Title text",
"items": [
{
"title": "Item 1"
},
{
"title": "Item 2",
"sublevel": true,
"items": [
{
"title": "Item 2.1"
},
{
"title": "Item 2.2"
},
{
"title": "Item 2.2",
"sublevel": true,
"items": [
{
"title": "Item 2.2.1",
"sublevel": true,
"items": [
{
"title": "Item 2.2.2.1"
},
{
"title": "Item 2.2.2.2"
},
{
"title": "Item 2.2.2.3"
}
]
},
{
"title": "Item 2.2.2"
},
{
"title": "Item 2.2.3"
}
]
}
]
},
{
"title": "Item 3"
}
]
}
mixin list(data)
ul
each item in data.items
li= item.title
if item.sublevel
+list(item)
Можно вообще убрать sublevel и делать проверку на вложенный items