Я пытаюсь использовать помощник представления внутри моих блоков шаблона {{#each}} без использования глобальных путей (мои контроллеры создают и уничтожают свои собственные представления).
Примеры. Учитывая представление со свойством массива myList и дочернее представление itemButton:
Это будет работать
Это не будет:
Я не могу получить доступ к родительскому представлению из каждого помощника представления (или на самом деле получить доступ ко всему, кроме свойств итерируемых объектов).
Хитрые обходные пути, которые я придумал:
или
или
Оба этих варианта кажутся ужасными.Конечно, есть лучшая альтернатива, чем создание 2 новых классов (и вложение 4 представлений в глубину) только для перебора списка. Есть ли помощник по замене руля, которого я могу использовать вместо него?
http://jsfiddle.net/FQEZq/3/ Недостатки: необходимость добавлять представление к каждому экземпляру модели только для итерации.
http://jsfiddle.net/ST24Y/1/ Недостатки: Теперь у вас есть два дополнительных вида, которые вам не нужны/не нужны, и меньше контроля над разметкой. Для ссылок из дочернего представления на родительский экземпляр теперь требуется parentView.parentView.parentView.