Вы можете переписать это в нативной Jade итерации , и она будет правильно строить DOM для вас, не говоря уже о том, что намного проще как читать, так и отлаживать.Я также рекомендовал бы использовать более описательные имена переменных в сложных вложенных итерациях, подобных этой.
ul
each gh, ghIndex in ghcomp
li= gh
ul
each c in gh
li= c
Было бы проще понять, что именно вы хотите сделать здесь, если вы разместили JSON, который передает шаблон Jade., но вот проблемы, которые я вижу:
Причина, по которой Jade закрывает теги ul перед встраиванием в него li
, заключается в том, что вы не отступили в следующей строке, поэтому он будет родственникомul вместо потомка:
ul
-for(let r=1; r<ghcomp.length; r++) {
и
ul
-for(let c=0; c<ghcomp[r][gh].length; c++) {
Их следует изменить на (если вы придерживаетесь этого метода):
ul
-for(let r=1; r<ghcomp.length; r++) {
и
ul
-for(let c=0; c<ghcomp[r][gh].length; c++) {