Подтвердить что ты не робот

Данные по заполнению поля Jade

Есть ли лучшие способы заполнения полей выбора на основе Jade, в настоящее время я использую этот пример. Есть ли лучшие способы не испортить код шаблона?

значение элемента - это "день".

    select
      repeation = [ 'no-repeat', 'day', 'week', 'month']
      for item in repeation
        if job.repeat == item
          option(selected="true") #{item}
        else
          option #{item}

Также, как отображать несколько выборов, когда элемент представляет собой массив из ['day', 'week']?

//Отредактируйте небольшое возможное решение для нескольких элементов

      enginges = [ 'google', 'bing', 'yahoo', 'duckduckgo']
      for engine in enginges
        option(selected=job.sources.indexOf(engine) != -1) #{engine}
4b9b3361

Ответ 1

Вы должны иметь возможность сделать что-то вроде:

for item in repeation
  option(selected=job.repeat == item) #{item}

Та же концепция должна быть применима к выпадающему меню с несколькими элементами.

Ответ 2

Несколько слов, чтобы добавить ответ (fooobar.com/info/272848/...):

  • "каждый" чаще используется вместо "for"

  • не забудьте "-" для строки: repeat = ['no-repeat', 'day', 'week', 'month'], или вы получите ошибку компиляции. Итак, окончательный результатом будет (то же, что и у вас):

    select
      - repeation = [ 'no-repeat', 'day', 'week', 'month']
      each item in repeation
        option(selected=job.repeat == item) #{item}