Рендеринг динамических элементов флажка для 3 каждой строки с шаблоном мопса

Мне нужно отобразить динамический набор элементов флажка с помощью шаблона мопса в моем веб-приложении Express JS.

Я использую стиль Bootstrap с шаблоном мопса. Как отобразить флажки, зависит от переменной approvedUsersArr (в типе JS Array), переданной в шаблон мопса. Элемент в approvedUsersArr - это объект JS с атрибутами objectId и approved_user.

Обычно я хочу, чтобы в каждой строке было три флажка. Когда строка заполняется тремя флажками в столбцах, она начинает новую строку и начинает отображать еще один набор из трех флажков и так далее.

Мой фрагмент мопса выглядит так, как показано ниже.

.modal-body.h-100
    each au, index in approvedUsersArr
        if (index + 1) % 3 == 1
            .row
                .col-md-4
                    .custom-control.custom-checkbox
                        input.custom-control-input(type='checkbox' value=au.objectId id='chbApprovedUser_' + au.objectId)
                        label.custom-control-label(for='chbApprovedUser_' + au.objectId) #{au.approved_user}
        else
                .col-md-4
                    .custom-control.custom-checkbox
                        input.custom-control-input(type='checkbox' value=au.objectId id='chbApprovedUser_' + au.objectId)
                        label.custom-control-label(for='chbApprovedUser_' + au.objectId) #{au.approved_user}

Он отображается, как показано ниже, что неверно.

Рендеринг динамических элементов флажка для 3 каждой строки с шаблоном мопса

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
230
1

Ответы 1

Вам нужно переместить элемент .row за пределы оператора if:

.modal-body.h-100
  each au, index in approvedUsersArr
    .row
      if (index + 1) % 3 == 1
        .col-md-4
          .custom-control.custom-checkbox
            input.custom-control-input(type='checkbox' value=au.objectId id='chbApprovedUser_' + au.objectId)
            label.custom-control-label(for='chbApprovedUser_' + au.objectId) #{au.approved_user}
      else
        .col-md-4
          .custom-control.custom-checkbox
            input.custom-control-input(type='checkbox' value=au.objectId id='chbApprovedUser_' + au.objectId)
            label.custom-control-label(for='chbApprovedUser_' + au.objectId) #{au.approved_user}

В качестве сноски: вам потребовалось несколько раз прочитать ваш вопрос, чтобы точно понять, в чем заключалась ваша проблема. Я бы порекомендовал вам в будущем начинать свои вопросы с четкого определения, в чем именно заключается проблема.

Другие вопросы по теме