4

我正在使用 Backbone js 和 Marionette 试验主细节的东西。如何更改视图的模型?我希望将视图的模型侦听器从旧模型中删除并应用于新模型。与模型相关的其他类似内容同上。有人有一些“changeModel”代码可以干净地做到这一点吗?

4

1 回答 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 回答