我有以下ViewState的定义:Ember.js ViewState中不附加查看
App.LoggedIn = Ember.ViewState.create({
view: App.TopbarView.extend({
elementId: 'topbar'
}),
反正我可以指定我想这个观点追加到顶栏ID的元素?
我唯一能找到的就是在输入处理程序中设置创建视图。
我有以下ViewState的定义:Ember.js ViewState中不附加查看
App.LoggedIn = Ember.ViewState.create({
view: App.TopbarView.extend({
elementId: 'topbar'
}),
反正我可以指定我想这个观点追加到顶栏ID的元素?
我唯一能找到的就是在输入处理程序中设置创建视图。
您需要传递View的实例而不是'view'属性的类。试试这个
App.LoggedIn = Ember.ViewState.create({
view: App.TopbarView.create({
elementId: 'topbar'
})
大概你会在StateManager中使用那个ViewState,对吗?
如果是这样,请将stateManager的rootElement设置为topbar,并且当输入此状态时,此视图将附加到该元素。
例如:
App.loggedIn = Ember.ViewState.create({
view: App.TopbarView
});
App.stateManager = Ember.StateManager.create({
rootElement: 'topbar',
loggedIn: App.loggedIn
});
如果您不能走这条路,你可以修改视图状态的输入功能找到的顶栏元素和视图追加到它。合理?
这是不正确的:如果'view'是一个类,它为你实例化,请参阅https://github.com/emberjs/ember.js/blob/5982731a69f6c5a853ac50269e1210616483c6e8/packages/ember-viewstates/lib/ view_state.js#L254-257。另外问题是如何将视图追加到给定的元素。 – pangratz