Как динамически создавать и отображать компонент в Ember JS 1.13

#javascript #ember.js

#javascript #ember.js

Вопрос:

как я могу динамически создавать компонент в ember 1.13.13. Я хочу создать его программно, внутри другого компонента.

Раньше это работало в Ember 1.11.

 var component = this.get('container').lookupFactory("component:my-component");
var view = this.createChildView(component, {param1: 'param1'});
view.createElement();
Ember.$('body').append(view.element);

view.didInsertElement(); // manually call didInsertElement
  

Тот же фрагмент кода не работает в ember 1.13 , и хотя он не выдает никаких ошибок, элемент компонента div пуст. Это похоже на то, что шаблон не отображается. Спасибо вам за вашу помощь.

Комментарии:

1. Рассматривали ли вы возможность использования {{component 'name'}} помощника?

2. взгляните на это » discuss.emberjs.com/t /… » это может дать вам некоторое представление

3. Спасибо. Я бы предпочел делать это из функции, а не с помощью помощника компонента.

4. Короткий ответ заключается в том, что вы не можете, по замыслу. Я также предлагаю моделировать его как данные, используя {{component}} , как предложено.

Ответ №1:

Спасибо за предложения, которые я получил в комментариях. Я решил переосмыслить свои компоненты и использовать each помощник, чтобы обойти это. Я бы посоветовал всем остальным сделать то же самое.