在路由中将emberjs组件附加到dom

在路由中将emberjs组件附加到dom,dom,ember.js,Dom,Ember.js,我正在动态创建一个带有余烬路由的余烬组件,需要将该组件附加到DOM中。我是这样做的: createwidget : function (row, column, value, htmlElement) { var componentObj = {}; componentObj.props = { id: 'selectid',

我正在动态创建一个带有余烬路由的余烬组件,需要将该组件附加到DOM中。我是这样做的:

createwidget : function (row, column, value, htmlElement) {
                var componentObj = {};
                componentObj.props = {
                                        id: 'selectid', 
                                        content: $this.codes, 
                                        optionValuePath: 'code', 
                                        optionLabelPath: 'value', 
                                        selectedValue: '', 
                                        name: 'selectInputName', 
                                        selectedLabel: '', 
                                        dropdownLabel: 'selectLabel', 
                                        placeholder: 'selectPlaceholder'
                                    };
                componentObj.name = 'jpma-select';
                componentObj.type = 'component';
                var component = $this._createComponent(componentObj);
                component.appendTo($(htmlElement));
            }
createwidget是来自jqxgrid小部件的函数。它允许您动态创建元素并将其添加到网格单元_createComponent是我们的自定义方法之一,它创建一个自定义余烬组件,在本例中是一个select。我得到一个错误: “断言失败:您不能追加到现有的EMBE.VIEW。请考虑使用EMBR.CuuleVIEW。”

如果将组件包装为jQuery对象,如下所示: $(组件).appendTo($(htmlElement))

我得到这个错误: “jpma analytics tracker.js:154 TypeError:无法读取未定义(…)的属性'ownerDocument'”

那么是什么原因呢?我能做些什么来让它工作?
谢谢

这可能是Javascript或jQuery方式。也许你必须让它工作,但在我看来,这不是余烬的工作方式

用于创建动态零部件


根据我个人的经验,如果您需要修改组件,请在组件(可能是包装器/外部组件)中进行修改,而不是在路径中进行修改。

这要么是精彩的,要么是完全疯狂的。我不知道。这在ember的组件生命周期挂钩中是如何工作的?简言之:这不起作用。我建议同时使用
每个
组件
助手。我怀疑这也不起作用,或者这不是一个好主意,但这是我的要求,但我想我会更努力地退一步。