Answers
我使用backbone已经3年了,现在在公司里也主要用backbone。建议如下:
1、不建议初学者看源码,能比较熟练使用了再去看源码比较事半功倍,否则就是事倍功半。
2、github上或者国外的开发者博客里有大量的教程,你可以结合backbone的官方文档边学边做
3、然后做自己的项目,遇到问题查stackoverflow
4、然后多看看github上被标星比较多的,而且跟你工作相关的项目源码
5、最后才是backbone的源码
有些人比较装逼,搞啥都说看看源码啥都会了。道理没错,但即使把源码看懂也不见得用得好,更何况尼玛啥都不懂看源码不考虑考虑投入产出的问题?
哈哈, 其实我前两月看的
Backbone
的源码, 虽然没完全看完, 但也差不多了.
结论: 个人观点,
如果你想用
Backbone
, 最好的办法就是看源码!
建议先看
Backbone.Events
, 这是
Backbone
很核心的一个功能! 提供所有其他组件间的
事件
机制.
Model
,
Collection
, 两者个人感觉有很多相似之处, 主要面向数据存储.
View
其实挺简单的, 只要你稍微用过
jQuery
, 看懂这块不是问题!
至于你说的
Router
, 其实我看的不多, 因为尼玛
IE
是个奇葩, 而我又不是搞前端的! 还有那
正则表达式
简直要我命! 不过有大神写过文章解析这块:
backbone库学习-Router - 无码帝
.
啊哈, 最后广告一记:
Bacbone
+
RequireJS
=>
backbone-requirejs-boilerplate
最最后, 只看 是没有用的, 别忘了 动手写 !
我是实习开始才从公司项目当中学习 Backbone 的, 我觉得有现成项目去理解会比较好,
Backbone 大致属于 MVP, 你要理解他的工作方式才行.
Backbone 划分的几个部分是 Model, Collection, View, Router,
其中 Collection 是 Model 的集合, 当作 Model 的特殊处理就好了.
工作的流程大概是这样的:
创建 Model, 根据 Model 的数据渲染 View, 这样界面先出来.
然后是 View 上有事件监听, 有用于 Controller 的方法, 这些方法可以操作 View 和 Model.
另外 Model 上还有数据更新, 这些更新在 View 当中有额外的监听, 可以触发 View 更新界面.
此外, Model 跟 Model 之间相互监听, 进行数据的同步, 这也是有的.
View 跟 View 之间会有嵌套的关系, 可能相互间还有事件和调用.
Router 指的是网页地址, 也可以当成一个数据, 可以去操作, 也可以监听事件,
Router 改变可以触发操作, 对 View 进行替换跟增减等等..
当然我这样说可能对你刚开始没什么用...