使用Ember 0.9.7.1
当应用程序启动并输入第一个状态时, 在 IE8 和下面获取这个错误 。 我有一个相当大的应用程序, 所以我不确定我可以在 JsFiddle 中复制, 但我会尝试显示下面的相关位 。
我看过GitHub的类似问题, 但我认为两者都没有确切地描述我做错了什么(我...对吗?
https://github.com/emberjs/ember.js/issues/752
https://github.com/emberjs/ember.js/issues/447
我的应用程序初始视图是由州经理创建/装入的, 例如:
SYOS.stateManager = Em.StateManager.create({
enableLogging: true,
rootElement: #syos-root,
initialState: noSectionSelected ,
noSectionSelected: Ember.ViewState.create({
view: SYOS.SelectSectionView,
chooseSection: function (manager, context) {
manager.goToState( sectionSelected );
}
}),
<snip>
这一看法的基本定义是:
SYOS.SelectSectionView = Em.View.extend({
templateName: selectSectionView ,
sectionsBinding: SYOS.sectionController.sections
});
被剥除的模板版本看起来是这样的 :
<script type="text/x-handlebars" data-template-name="selectSectionView">
<h2>Some markup</h2>
<table class="select-sect" cellspacing="0">
{{#each sections}}
{{#view SYOS.SelectSectionRowView sectionBinding="this" tagName="tr"}}
<td class="sect">{{section.name}}</td>
{{/view}}
{{/each}}
</table>
</script>
此模板在我的 html 中直接定义, 如果有用的话 。
当我装入控制台日志显示的页面时 :
LOG: STATEMANAGER: Entering noSectionSelected SCRIPT438: Object doesn t support this property or method ember-0.9.7.1.min.js, line 10 character 30680 SCRIPT5022: Cannot perform operations on a Metamorph that is not in the DOM. ember-0.9.7.1.min.js, line 13 character 29412 SCRIPT5022: Exception thrown and not caught ember-0.9.7.1.min.js, line 13 character 16607
使用 IE s 调试器( wew) 打破第一个错误, 我可以看到# each 变形标签的错误 semsems em > 正在发生。 它在此行断开 :
g.prototype.checkRemoved=function(){if(this.isRemoved())throw new Error("Cannot perform operations on a Metamorph that is not in the DOM.")}
因为此. isRemoved () 正在返回真实 。 在调试器中查看 < code> this code > 我可以看到 < code> its. start = = = = = “ moteform-6- start ” 。 如果我在工作浏览器中搜索该变形标记, 似乎就是模板中 < code_ each code > 块的起始标记 。
区域Binding 是一个从 jQuery. ajax 调用中装入的数组, 所以最初是 [ ], 然后使用 < code> thiss. get ( section). pushObject( section) ; code > 来进行调用, 同时在我控制器中循环ajax调用结果 。
在此状态下,我不会做任何动态视图的附加或删除, 它只需要加载视图, 并绑紧部分, 当它们从 ajax 服务电话中返回时 。
谁能帮我指点一下这个方向吗?
Ember 0.9.8.1: 更新为 Ember 0.9.8.1, 现在控制台有少一个错误 :
LOG: STATEMANAGER: Entering noSectionSelected SCRIPT5022: Cannot perform operations on a Metamorph that is not in the DOM. ember-0.9.8.1.min.js, line 14 character 4051 SCRIPT438: Object doesn t support this property or method ember-0.9.8.1.min.js, line 10 character 31677