WIX - изменение текста в повторителе в зависимости от логического значения в наборе данных

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

1 ответ

Поскольку вы упомянули, что находитесь на динамической странице, я предполагаю, что ваш ретранслятор подключен к набору данных. Это немного усложняет задачу, поскольку вам приходится ждать загрузки набора данных. Если бы вы использовали onItemReady() чтобы установить значения полей, набор данных просто перезапишет их.

Вы хотите сделать что-то вроде этого:

$w.onReady(function () {
    $w('#dataset1').onReady( () => {
      $w('#repeater1').forEachItem( ($w, itemData, index) => {
          if(itemData.boolField){
              $w('#boolText').text = "Yes Ma'am!";
          }
          else {
              $w('#boolText').text = "No way Jose!";
          }
      } );
  } );
} );

По сути, вы ждете, пока набор данных будет готов, а затем переберите все элементы в вашем ретрансляторе, используя forEachItem() обратный вызов и сброс значения текстового поля на основе значения в логическом поле.

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