Backbone / Spine中的常见模式是在发生某些事情时从头开始重新渲染整个视图。
但是如果你只需要更新它的一小部分(高亮,选择,禁用,动画等)你会怎么做?
重新渲染所有内容没有任何意义,因为它可能会搞砸当前布局(例如,如果页面已滚动到某个点)。
另一方面,如果您使用类似$('.selected').highlight()
的内容从视图中“内联”更新小部件,则必须在视图模板和JavaScript代码中复制相同的逻辑
那么Backbone / Spine的“最佳实践”是什么呢?
答案 0 :(得分:5)
在Spine中,使用元素模式:http://spinejs.com/docs/controller_patterns
答案 1 :(得分:1)
在这种情况下忽略pushstate,seo和accessibility语言。渐进式增强的想法是你所追求的