2013-04-17 6 views
0

может кто-нибудь объяснить, почему этот простой пример из документации Ember.Handlebars.helpers API класса не работает для меня ??свойство parentView не установлено в дочернем представлении

<html> 
<head> 
</head> 
<body> 
    <script src="js/libs/jquery-1.9.1.js"></script> 
    <script src="js/libs/handlebars-1.0.0-rc.3.js"></script> 
    <script src="js/libs/ember-1.0.0-rc.2.js"></script> 
    <script> 
    aView = Ember.View.create({ 
    template: Ember.Handlebars.compile("{{#view}} aview: my parent:{{parentView.elementId}} {{/view}}") 
    }); 

    aView.appendTo('body'); 
    </script> 
</body> 
</html> 

это просто выводит:

aview: my parent: 

без elementId. В другом коде, который я играл с parentView, не определено?

+0

'view.parentView' должен работать – MilkyWayJoe

+0

спасибо, что работает. Возможно, вы можете дать мне понять, как решить следующую часть моей головоломки. Как получить доступ к parentView из обработчика событий? – user2290489

+0

Отзывы (0) Ваш отзыв будет первым! Где вы обрабатываете мероприятие? – MilkyWayJoe

ответ

1

Ответ на основании моих комментариев.

Внутри шаблона вида в рулебелях свойства, определенные в реализации класса View (или общий, автоматически сгенерированный класс представления), можно получить через view.propertyName. Поскольку parentView этого свойства текущего вида, нужно сделать что-то похожее на следующее:

{{#view}} 
    aview: my parent:{{view.parentView.elementId}} 
{{/view}} 
Смежные вопросы