У меня такой контроллер:
App.ShowController = Ember.Controller.expend({
buttonTitle: 'Create'
});
И следующий шаблон show.handlebars
<a href='#'>{{buttonTitle}}</a>
Но текст не отображается. Есть ли специальный вызов для доступа к атрибуту?
1 ответ
Обычно, когда представление отображается (через маршрутизатор), контекст представления автоматически устанавливается на контроллер, поэтому не должно быть ничего особенного.
Вот пример, где MyApp.IndexController
автоматически устанавливается в качестве контекста IndexView
(а его шаблоном является шаблон index
):
MyApp = Ember.Application.create({});
MyApp.Router = Ember.Router.extend();
MyApp.Router.map(function(match) {
match('/').to('index');
});
MyApp.IndexController = Ember.Controller.extend({
buttonTitle: "create"
});
Шаблон:
<script type="text/x-handlebars" data-template-name="index">
{{buttonTitle}}
</script>
И вы можете попробовать это на этом JSFiddle.
Примечание: здесь я использую Ember v1.0.0-pre.2-239. Чтобы обновить этот пример до уровня master, необходимо внести некоторые изменения.
Похожие вопросы
Новые вопросы
ember.js
Ember.js - это фреймворк для приложений с компонентами, написанный на JavaScript. Попробуйте облегчить ответ на свой вопрос с помощью предварительно настроенных шаблонов, упомянутых в вики этого тега. (Всегда указывайте версию ember, используемую при описании вашей проблемы)
render
из шаблонаshow
. Так что контекст действительно менялся.