Jsrender: Нет доступа к переменной в {{for}}

Созданный на 15 июн. 2012  ·  3Комментарии  ·  Источник: BorisMoore/jsrender

Привет Борис,

Я передаю в шаблон следующее
{'items': items, rank: true}

items - это массив объектов

В моем шаблоне у меня есть

{{для товаров}}
{{if (рейтинг)}} {{: # index}} {{/ if}}
{{/для}}

Но похоже, что переменная "rank" ничего не делает.

Самый полезный комментарий

Внутри {{for items}} контекст данных (текущий элемент данных) является элементом массива items.
Итак, вы тестируете элемент с item.ranked == true. Но ваше ранжированное свойство находится на объекте, у которого есть свойство items, а не на элементе. Может ты хочешь

{{for items}}
   {{if #parent.parent.data.ranked)}}{{:#index}}{{/if}}
{{/for}}

Другой подход, который вы можете использовать, - создать переменную шаблона, которая копирует ранжированное свойство и делает его доступным для вложенных шаблонов через контекст шаблона:

{{for items ~isRanked=ranked}}
   {{if ~isRanked)}}{{:#index}}{{/if}}
{{/for}}

Свойства данных не отображаются автоматически во вложенных контекстах. (В JsRender нет блока with (data) {} ). Но параметры шаблона предоставляют лучший способ включить отображение переменных во вложенных контекстах ...

Все 3 Комментарий

Внутри {{for items}} контекст данных (текущий элемент данных) является элементом массива items.
Итак, вы тестируете элемент с item.ranked == true. Но ваше ранжированное свойство находится на объекте, у которого есть свойство items, а не на элементе. Может ты хочешь

{{for items}}
   {{if #parent.parent.data.ranked)}}{{:#index}}{{/if}}
{{/for}}

Другой подход, который вы можете использовать, - создать переменную шаблона, которая копирует ранжированное свойство и делает его доступным для вложенных шаблонов через контекст шаблона:

{{for items ~isRanked=ranked}}
   {{if ~isRanked)}}{{:#index}}{{/if}}
{{/for}}

Свойства данных не отображаются автоматически во вложенных контекстах. (В JsRender нет блока with (data) {} ). Но параметры шаблона предоставляют лучший способ включить отображение переменных во вложенных контекстах ...

У меня есть jquery datatable, где я показываю дочерние строки с помощью js render. Для обоих столбцов в таблице данные поступают из двух разных массивов. Итак, как мне разбить данные на 2 отдельные строки, которые в настоящее время отображаются в виде списка, разделенного запятыми

@ Krish2215 : Это для сообщений об ошибках и других проблемах, а не для общих справочных вопросов. Вы можете попробовать stackoverflow https://stackoverflow.com/questions/tagged/jsrender. Но вам нужно будет указать гораздо более конкретный контекст и, в идеале, jsfiddle, чтобы показать вашу точную сложность ....

Была ли эта страница полезной?
0 / 5 - 0 рейтинги