我有以下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