我一直在玩Ember.js,並且我無法輕易找到的是如何切換基本應用程序模板。例如,假設我的應用程序具有2個核心佈局,當用戶在註冊之前瞭解應用程序時,該佈局更具表現力,另一個是登錄佈局,即Web應用程序本身。什麼是在Ember.js中切換應用程序模板的推薦方式?
什麼是建議的方式來改變將在有條件的基礎上使用哪個佈局模板?
UPDATE
從解決方案,下面是我在做什麼:https://gist.github.com/eliperelman/8310055
我一直在玩Ember.js,並且我無法輕易找到的是如何切換基本應用程序模板。例如,假設我的應用程序具有2個核心佈局,當用戶在註冊之前瞭解應用程序時,該佈局更具表現力,另一個是登錄佈局,即Web應用程序本身。什麼是在Ember.js中切換應用程序模板的推薦方式?
什麼是建議的方式來改變將在有條件的基礎上使用哪個佈局模板?
UPDATE
從解決方案,下面是我在做什麼:https://gist.github.com/eliperelman/8310055
我會在ApplicationView
中使用layoutNameBinding
。這個答案應該讓你開始:https://stackoverflow.com/a/13980055/1234490(開始閱讀'編輯')。
你可以做這樣的事情:
App.ApplicationRoute = Ember.Route.extend({
renderTemplate: function() {
if(... authenticated ...) {
this.render('authenticated');
else{
this.render('guest');
}
}
});
這將改變整個應用程序模板,但爲兩個模板保留相同的應用程序控制器(您可以將控制器使用的哈希傳遞給render方法)。