我遇到了一个问题,我无法在我的Ember CLI应用程序中正确显示嵌套插件.我想要的视图树如下:
这与Ember Starter Kit中的"application> posts.index> post"层次结构非常相似.我想要的行为是当我导航到client_availabilities.index时出现在"mainoutlet"中的client_availability列表,然后当我在"suboutlet"中调出一个单独的client_availability时,它会持续存在.
容易,对吗?这是默认行为以及为什么我们都喜欢Ember.但是,我似乎无法让它发挥作用.当我在client_availabilities.index中明确地指定我的命名子输出并单击单个client_availability时,任何插座中都没有显示任何内容:
/app/template/application.hbs:
{{link-to 'Client Availabilities' 'client_availabilities'}}
{{outlet 'mainoutlet'}}
Run Code Online (Sandbox Code Playgroud)
/app/template/client-availabilities/index.hbs:
{{outlet 'suboutlet'}}
Run Code Online (Sandbox Code Playgroud)
/app/routes/client-availabilities/index.js:
import Ember from 'ember';
export default Ember.Route.extend({
renderTemplate: function(){
this.render({
into: "application",
outlet: "mainoutlet"
});
},
model: function() {
return this.store.find('client_availability');
}
});
Run Code Online (Sandbox Code Playgroud)
/app/routes/client-availability.js:
import Ember from 'ember';
export default Ember.Route.extend({
renderTemplate: function(){
this.render('client_availability', {
into: "client_availabilities",
outlet: "suboutlet"
});
},
model: function(params) {
return this.store.find('client_availability', params.client_availability_id);
}
});
Run Code Online (Sandbox Code Playgroud)
或者,当我在应用程序中定位我的mainoutlet时,client_availability出现在"suboutlet"client_availabilities.index从"mainoutlet"中消失:
/app/template/application.hbs:
{{link-to 'Client Availabilities' …Run Code Online (Sandbox Code Playgroud)