2013-01-03 65 views
0

說我有一個基本模板 - 讓我們稱之爲「殼」,它提供了3個div(頂部,左側,主)。在我的頂級股市,我追加了一個導航欄視圖。導航欄視圖有一個「登錄」鏈接,我想在用戶登錄時更改爲「註銷」。這最好是使用模板中的邏輯完成,還是建議使用這些單獨的視圖和如果是這樣,我最好在哪裏處理顯示邏輯?我很確定這是我需要做這種事情的唯一例子。謝謝你的幫助。視圖中的條件項目還是單獨的視圖?

回答

1

其中一個六打六。即使您將邏輯放在模板中,該模板仍然需要您傳遞一個標誌,指示它是處於「已登錄」模式還是「已註銷」模式,並且該標誌將來自哪裏(如果你在做標準Backbone)?一個看法。

因此,其實你的問題令我基本上是之間的選擇是這樣的:

var MyView = Backbone.View.extend({ 
    template: compile('Logged {{if loggedIn}}In{{else}}Out{{/if}}'), 
    render: function() { 
     this.$el.html(this.template(this.loggedIn); 
    } 
}); 

或:基於您的評論是

var MyView = Backbone.View.extend({ 
    template: compile('Logged '), 
    render: function() { 
     this.$el.html(this.template() + (this.loggedIn ? 'In' : 'Out')); 
    } 
}); 

我很確定這是我需要做這種事情的唯一例子。

我會建議不要打擾模板邏輯,只是因爲......爲什麼要麻煩?但最終沒有錯誤的答案。

相關問題