2011-10-01 17 views
9

Backbone/Spine中的常见模式是在发生某些事情时从头开始重新渲染整个视图。如何更新Backbone或Spine中的小部分视图

但你会怎么做,如果你只需要更新的一小部分(高亮显示,选择禁用,动画等)?

重新渲染一切,因为它可能搞砸了当前的布局(例如,如果页面已滚动到某一点)没有任何意义。

在另一方面,如果你更新使用类似$('.selected').highlight()查看一小部分“内联”,那么你就必须复制在视图模板和JavaScript代码相同的逻辑。

那么,什么是“最佳实践”,在骨干/脊柱做到这一点?

+1

最好的方法是制作一个小的“局部”视图并更新,然后当它需要更新时。你甚至可以只用简单的输入字段就可以看到视图,并在更改时更新它...可能有更好的方法,但是我在当前项目中使用这个视图没有任何问题。一个问题是,在这种情况下,你有很多意见,但无论如何,最好是有很多意大利面代码......实际上,骨干不过是组织代码的好工具。 –

回答