Backbone js と Marionette を使用して、マスターと詳細を実験しています。ビューのモデルを変更するにはどうすればよいですか? ビューのモデル リスナーを古いモデルから削除し、新しいモデルに適用したいと考えています。モデルに関連する他の同様のものについても同様です。これをきれいに行うための「changeModel」コードを持っている人はいますか?
質問する
579 次
1 に答える
1
古いビューを破棄して、別のモデルに基づいて新しいビューを作成する方が簡単ではないでしょうか。この例では、モデル自体をItemViewOptionsに渡します。モデルには、いくつかの明確な特性があります...モデルはサーバーから取得されるため、Viewの動作を操作できます。これは動的テンプレートをバインドするためのものですが、イベントでも何かできると思います。これには、すべてを再バインドするのではなく、最初に持っているものをすべて破棄する必要があります。
node = Backbone.Model.extend
nodes = Backbone.Collection.extend
model: node
url: ->
Myapp.rooturl + "/api/node"
initialize: (nodes) ->
@fetch()
nodeView = Backbone.Marionette.ItemView.extend
initialize: (options) ->
@template = "#" + options.model.attributes.nodetemplate + "-template"
tagName: 'div'
nodesView = Backbone.Marionette.CollectionView.extend
itemView: nodeView
itemViewOptions: @model
于 2012-10-10T16:02:35.323 に答える