【发布时间】:2014-07-17 13:57:03
【问题描述】:
我有一个简单的模态对话框实现,它接受模型以获取详细信息。因为我不能为不同的模型使用一个模板,所以我为每个模型创建了一个单独的模态。
在路线 A 上,我使用此代码显示我的模式:
openAcctRegModal: function(request) {
this.controllerFor('modal-acct-reg').set('model', request);
return this.render('modal-acct-reg', { into: 'application', outlet: 'modal' });
}
为了关闭它,我在应用程序路由上使用了一个closeModal函数,如下所示:
closeModal: function() {
return this.disconnectOutlet({ outlet: 'modal', parentView: 'application'});
}
这两个工作正常,所以我做了与另一条路线类似的事情,比如路线 B:
openModal: function(request) {
this.controllerFor('modal-request').set('model', request);
return this.render('modal-request', { into: 'application', outlet: 'modal' });
}
但是,另一个没有按预期工作。与 Route A 不同,在 Route B 中调用 disconnectOutlet 并不会完全从 DOM 中移除模态模板。
【问题讨论】:
-
您能否提供一个示例 jsbin/jsfiddle 演示用于调试目的?
-
谢谢。我已经尝试过,但不幸的是我无法在更简单的应用程序中复制该问题。测试应用程序工作得很好。我正在与 yeoman 合作,因此我的代码被分成不同的文件。我只是希望有人以前已经遇到过这个问题。
标签: javascript ember.js handlebars.js