Emberjs: показать розетку на определенных условных

Я хочу показать некоторые блоки HTML, основанные на существовании розетки. Я пробовал этот код, но он не работает. Я что-то пропустил?

{{#if outlet}}
    <table class="col-sm-9">
        some content
    </table>
    <table class="col-sm-3">
        {{outlet}}
    </table>
{{else}}
    <table class="col-sm-12">
        some content
    </table>
{{/if}}

ИЗМЕНИТЬ:

Мой сценарий: если я нахожусь на маршруте customers, то outlet скрыт, иначе, если я нахожусь на маршруте customers.create, то отображается outlet. Есть ли простой способ сделать это без касания файла router.js?


person Pewh Gosh    schedule 25.09.2014    source источник


Ответы (1)


Вы пытались назвать розетку, а затем отобразить содержимое конкретной розетки в маршрутизаторе.

См. http://emberjs.com/guides/routing/rendering-a-template/ что-то вроде этого, что упоминается в руководстве.

App.PostRoute = App.Route.extend({
  renderTemplate: function() {
      this.render('favoritePost', {   // the template to render
      into: 'posts',                // the template to render into
      outlet: 'posts',              // the name of the outlet in that template
      controller: 'blogPost'        // the controller to use for the template
  });
  this.render('comments', {
     into: 'favoritePost',
     outlet: 'comment',
     controller: 'blogPost'
    });
  }
});
person Suchit Puri    schedule 25.09.2014
comment
Смотрите мой обновленный вопрос. Я не называю название торговой точки раньше. Кстати, а есть какой-нибудь простой способ сделать это без касания router.js файла? - person Pewh Gosh; 25.09.2014