所有,
我正在使用Backbone JS建立一个应用程序,根据我的方法,如果第一个模型查找太旧,我会向服务器发出一个更新我的本地存储的请求.
所以我要处理的是这个.
(hashchange) ->
fetch model ->
(if model expired [eg: grabbed from LS], fetch again in background)
render
Run Code Online (Sandbox Code Playgroud)
在视图中,我将一个更改事件绑定到指向渲染的模型,以便当第二个请求返回时,页面只是重新渲染.
对于你们男士们和女士们,我问为什么第一页加载所有事件都有效(点击等)但是如果视图重新渲染,他们就不再了?
有些代码可以帮助您查看视图,有一个带嵌套请求的嵌套视图:
class ShowView extends Backbone.View
template: +some template+
initialize: ->
this.render()
@model.bind('change', this.render)
render: ->
$(@el).html(this.template(@model.toJSON())
items = new ItemCollection
@model.set(items: items, {silent: true})
@$items = new ItemsView(collection: items, el: @$('#posts'))
items.fetch()
+displayPage @el+
@
class ItemsView extends Backbone.View
template: +some template+
initialize: ->
@collection.bind('reset', this.render)
render: =>
@collection.each( (model) -> new ItemView(model: model))
@
Run Code Online (Sandbox Code Playgroud)
......我发誓...
class …Run Code Online (Sandbox Code Playgroud) backbone.js ×1