У меня есть приложение ember с моделью под названием users.js
с соответствующими контроллерами и маршрутизацией. В моем usersController.js
у меня есть функция, которая подсчитывает количество пользователей в системе. Затем я могу отобразить эту фигуру в моем шаблоне users
. Тем не менее, я хочу отобразить эту фигуру в моем шаблоне index
, это возможно? Как бы я это сделал - сейчас цифра кажется недоступной для использования за пределами моей модели users
.Доступ к вычисленным свойствам за пределами их модели в ember.js
Вот мой usersController-
App.UsersController = Ember.ArrayController.extend({
sortProperties: ['name'],
sortAscending: true,
numUsers: function() {
return this.get('model.length');
}.property('model.[]')
});
И мой html-
<script type = "text/x-handlebars" id = "index">
<h2>Homepage</h2>
//This is where I would like the figure to be
<h3>There are {{numUsers}} users </h3>
</script>
<script type = "text/x-handlebars" id = "users">
<div class="col-md-2">
{{#link-to "users.create"}}<button type="button" class="btn btn-default btn-lg"><span class="glyphicon glyphicon-plus"></button> {{/link-to}}
//This works fine
<div>Users: {{numUsers}}</div>
</div>
<div class="col-md-10">
<ul class="list-group">
{{#each user in controller}}
<li class="list-group-item">
{{#link-to "user" user}}
{{user.name}}
{{/link-to}}
</li>
{{/each}}
</ul>
{{outlet}}
</div>
</script>
Блестящий, спасибо, если бы я хотел сделать это для более чем одной модели, скажем, для подсчета предметов, как бы выглядел IndexRoute и IndexController? – bookthief
Добро пожаловать. Я обновил ответ, пожалуйста, посмотрите. –