Могут ли «форма» и «макет» использоваться вместе при визуализации представления ввода? - PullRequest
0 голосов
/ 20 февраля 2020

Я хочу разместить некоторый текст над формой ввода, но у меня возникают проблемы с выяснением того, как заставить Биксби принять их обоих как потомков рендера. Это вообще возможно? сообщение об ошибке жалуется на то, что содержимое рендера является как пустым, так и мультикардинальным (?). enter image description here

      render {

        layout { section { content { paragraph { value ("Each AltBrain tracks a particular topic and prepares news, facts, images, and social media for you to review.  What would you like this AltBrain to track?")}}

         }
        }

        form {
          elements {
            text-input {
              id (comments)
              type (Comments)
              label (Example: The Witcher on Netflix.)
              max-length (72)
              value ("#{raw(comments)}")
            }
          }
          on-submit {
            goal: Comments
            value: viv.core.FormElement(comments)

          }
          submit-button (Next)
        }
      }

enter image description here

1 Ответ

4 голосов
/ 25 февраля 2020

Простой ответ: form нельзя использовать вместе с layout, более поздний будет недоступен.

Более сложный вопрос, когда я использую layout в режиме ввода?

Проверьте следующий код в качестве примера. Он используется для предоставления дополнительного шага выбора / подтверждения, когда только 1 допустимое значение для требуемого ввода в действии.

  render {
if (size(this)==1) {
  layout {
    section {
      content {
        title-area {
          slot1 {
            text ("You sure are #{value(this)} years old?")
          }
        }
      }
    }
    select-button-text ("confirm")
  }
}
else-if (size(this)>1) {
  selection-of (this) {
    where-each (item) {
      title-card {
        title-area {
          slot1 {
            text ("Select #{value(item)}")
          }
        }
      }
    }
  }
}
else {
  form {
    elements {
      number-input {
        id (that)
        label (Age)
        type (IntAge) 
      }
    }
    on-submit {
      goal: IntAge
      value: viv.core.FormElement(that)
    }
  }
}

}

В случае только 1 значения, вид такой (здесь требуется select-button-text). Убедитесь, что в действующей модели этот вход имеет prompt-behavior (AlwaysSelection) enter image description here

...