2013-03-08 2 views
0

Я создаю виджет/компонент, которые можно ссылаться несколько раз в одном шаблоне с помощью # view-helper. Пример:Как создать экземпляр контроллера для каждого экземпляра представления в EmberJS?

Priority: {{view App.DropDown valueBinding="content.priority" sourceBinding="App.Priority"}} <br/> 
Status: {{view App.DropDown valueBinding="content.status" sourceBinding="App.Status"}} <br/> 

Этот виджет должен связаться с магазином, чтобы получить список всех видимых элементов. Насколько я понимаю, Ember, взгляды не должны напрямую связываться с магазином. Можно ли создать экземпляр моего DropDownController для каждого представления?

ответ

1

Это похоже на хорошую подгонку для вспомогательного элемента управления. Это создает новый контроллер каждый раз вы его используете:

Priority: {{control "dropDown" valueBinding="content.priority" sourceBinding="App.Priority"}} <br/> 
Status: {{control "dropDown" valueBinding="content.status" sourceBinding="App.Status"}} <br/> 

Этот фрагмент кода необходимо создать экземпляр каждый раз свежий DropDownController и DropDownView При вызове. Вам просто нужно выяснить, каков наилучший способ передать значение и источник привязки к вашему представлению.

+0

Похоже, что это решит мою проблему. Встаньте для проверки :) – Espo

+0

Я буду. Скажите мне ваше решение, чтобы я мог соответствующим образом обновлять привязки для других людей. :-) – mavilein

+0

Похоже, что {{control}} - помощник не работает с Bindings, поэтому я не могу его использовать. Если эта проблема будет решена, она будет работать для моего сценария: https://github.com/emberjs/ember.js/pull/2225 – Espo

Смежные вопросы