Я использую помощник render
внутри шаблона, который отображает поисковый запрос с именем типа.
По существу (код удален для краткости):
script(type='text/x-handlebars', data-template-name='index')
{{render search}}
script(type='text/x-handlebars', data-template-name='search')
{{view App.TaggableInput valueBinding="searchText"}}
Что дает мне SearchController
, отделенный от IndexController
.
Внутри App.TaggableInput
Я хватаю SearchController
, чтобы выполнить некоторую проверку события keyUp:
App.TaggableInput = Ember.TextField.extend({
keyUp: function(e){
var controller = this.get('controller');
// Do stuff with the controller
}
});
В Ember RC7 я могу получить доступ к контроллеру внутри представления, как вы ожидали бы с помощью this.get('controller').get('searchText')
.
Однако в Ember 1.0.0 this.get('controller')
возвращается представление, и что бы я ни делал, я не могу получить SearchController
.
Я не могу найти какую-либо информацию на веб-сайте ember о том, что изменилось или что я должен делать... пока я придерживаюсь RC7.
Любые идеи? Сегодня утром я провел там часы и не могу понять. Спасибо.
ОБНОВЛЕНИЕ: исправлено!
Я поменял this.get('controller')
на this.get('targetObject')
и работает по-прежнему. Просматривал через недавнюю фиксацию в источнике ember, чтобы найти ее...
Спасибо за ваши предложения, ребята!