Я использую spacebars для создания формы в стиле викторины. Следующий код корректно отображает подробную информацию о 3-й пункт в викторине массивевыбор данных массива случайным образом с помощью spacebars
{{#with quiz.[2]}}
<form class="testForm">
<br>
{{question}}<br>
{{#each answer}}
<input type="radio" name="multipleChoice" value={{this}}>{{this}}<br>
{{/each}}
<br>
<input type="submit" value="Submit">
<br><br><br>
</form>
{{/with}}
и следующая вспомогательная функция корректно генерирует случайное число из числа элементов в массиве викторины
Template.templateName.helpers({
randomNumber() {
return _.random(0, (this.quiz.length - 1));
}
});
что теперь Я пытаюсь сделать так, чтобы получить
{{#with quiz.[2]}}
использовать этот генератор случайных чисел для случайного отображения викторины. Логически я хочу сделать что-то вроде
{{#with quiz.[randomNumber]}}
, но это не работает, очевидно
большое спасибо! это дает мне правильный результат! Я получаю от него консольную ошибку: «Исключение в помощнике шаблона: TypeError: Не удается прочитать свойство« длина неопределенного »- все равно? –
См. Обновленный код, защищающий отсутствующий массив, что может случиться, когда подписка еще не готова. –