【发布时间】:2015-12-10 16:23:07
【问题描述】:
我正在使用第三方插件,我无法控制它。除了这个插件之外,我在整个应用程序中都使用 Ember,我需要在由所述插件呈现的 div 内实例化一个组件,以按照我想要的方式控制它(避免使用 jQuery 事件等)。
1- 我正在创建一个名为“MyNewComponent”的组件
2- 当前结构:
<myComponent1>
<myPlugin-notEmber>
<div-where-I-want-to-append-MyNewComponent class="divClass"/>
</myPlugin-notEmber>
</myComponent1>
3- 考虑到“div-where-I-want-to-append-MyNewComponent”是由插件呈现的,而不是由我呈现的。
4- 我目前在 myComponent1 中尝试做的是:
onDidInsertElement: Em.on('didInsertElement', function() {
this.$().find('.divClass').each(function(index, element) {
MyNewComponent.create().appendTo(Em.$(element));
});
}),
为什么它不起作用:
我得到了这个:(Ember 1.13)
“您不能附加到现有的 Ember.View。考虑改用 Ember.ContainerView。”
我在寻找什么:
a) 正确的方法或
b) 等效的替代方案(将在该插件中创建一个组件)
【问题讨论】: