使用 恩贝尔:11年1月13日, 灰烬数据:1.13.8, 烬-CLI:12年1月13日添加组件动态地灰烬
我想动态组件添加到网页 - 这是网页模板的另一个组件不认为它会产生任何影响 - 。这里是我的代码片段中,我尝试了一个名为LyricsEditorLine组件添加到<div>
标签,不知何故像this
议程-α/组件/歌词 - editor.js内
import Ember from 'ember';
import LyricsEditorLine from 'agenda-alpha/components/lyrics-editor-line';
export default Ember.Component.extend({
afterRenderEvent:function(){
LyricsEditorLine.create().appendTo($("#in"));
},
init:function(){
Ember.run.scheduleOnce('afterRender', this, this.afterRenderEvent);
this._super();
}
});
议程-α/模板/组件/歌词 - editor.hbs
<div id='in'> </div>
每到这个让我
'Uncaught Error: Assertion Failed: You cannot append to an existing Ember.View. Consider using Ember.ContainerView instead'
时间
找了ContainerViewhere
发现,这是deprecated 大多数,我发现不使用灰烬,CLI和作为一个初学者,使答案变得很难理解
我希望能够到组件多添加为用户需要
简短的回答是,你不能这样做,没有一些潜在的不良副作用。为什么你不能使用Handlebars'{{#if}}'助手来动态渲染组件? – GJK
未定义要添加的组件数量。这取决于用户的需求 –
你仍然可以在Handlebars中做到这一点,你只需要使用某种循环(有几种方法可以做到这一点)。一般来说,使用Handlebars和计算/存储的属性几乎可以用jQuery完成所有工作。 – GJK