backbone是一个非常好的前端MVC框架,将数据与逻辑分离出来,在稍大一点项目中,backbone都有用武之地。
个人感觉backbone最好的地方就是通过事件来管理数据改变导致的视图改变,backbone解决这类问题可谓手到擒来,并极大降低代码的复杂度,提高代码的可维护性。
一下仅为个人笔记,并非全面介绍backbone的博文,不足之处还望见谅
Model:
Model内部已继承Event,使用set方式改变(attr)的值会触发(change:attr)的事件
constructor / initialize 模型创建时自动调用
defaults model默认属性
View
只设置el,不能设置$el,$el是el的包装(只读)
Collection
model的集合
reset(models)
备注:
1.防止事件双向传递(死循环),在业务中比较两个model/collection是否有变化(有变化reset,没变化不reset)