gpt4 book ai didi

ember.js - 试图将 Ember.ViewContainer 的 currentView 设置回以前的 View ,在 1.0pre 中被破坏

转载 作者:行者123 更新时间:2023-12-02 06:01:40 25 4
gpt4 key购买 nike

我有一个容器 View ,我将其用作我的主要包装 View ,其中其他 View 被换入和换出。

在 Ember 0.9.8 中,这工作得很好。但是,现在在 Ember 1.0pre 中,当我尝试换入之前换出的 View 时出现错误。

这是我的基本代码:

App.globalView = Ember.ContainerView.create({
screenOne: App.screenOne.create(),
screenTwo: App.screenTwo.create()
});

App.globalView.set('currentView', App.globalView.get('screenOne')); // <-- good
App.globalView.set('currentView', App.globalView.get('screenTwo')); // <-- good
App.globalView.set('currentView', App.globalView.get('screenOne')); // <-- BAD

我现在得到错误
Error: assertion failed: calling set on destroyed object
...from
Ember.ContainerView.Ember.View.extend.initializeViews
set(view, '_parentView', parentView);

我在 http://jsfiddle.net/SamFent/WmfTX/ 有一个这样的例子.在 jsFiddle 中,我没有看到错误,但之前的 View 无法加载。

有谁知道发生了什么?

最佳答案

Ember.ContainerView 现在在取消设置时会破坏 View ,因此无法随意使用它。这是你的 fiddle 的一个 fork ,可以做你想做的:http://jsfiddle.net/WmfTX/1/

如果您确实需要避免拆除和重新创建 View ,请渲染两个 View 并使用 isVisible属性来切换可见性。

关于ember.js - 试图将 Ember.ViewContainer 的 currentView 设置回以前的 View ,在 1.0pre 中被破坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12387666/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com