Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Backbone.js 初探
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Alibaba.com
May 20, 2013
Technology
260
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Backbone.js 初探
分享backbone的使用场景及实例分析-- 圈圈36期
Alibaba.com
May 20, 2013
More Decks by Alibaba.com
See All by Alibaba.com
Atom
alibaba
0
170
jQuery Selector 源码剖析
alibaba
0
170
Other Decks in Technology
See All in Technology
貴方はどのエンジニアリングを磨くのか
hatyibei
0
120
凡エンジニアがこの先生きのこるためには。〜TypeScript完全に理解したい〜
alchemy1115
2
160
プロダクトだけじゃない、社内プロセスにおける自動化・省力化ノススメ
kakehashi
PRO
1
3.6k
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
13
2k
人を動かすのは時間ではなく、納得感 〜新任EMが入社3ヶ月、組織を2回変えた話〜
kakehashi
PRO
3
220
AICoEでAIネイティブ組織への進化
yukiogawa
0
160
ゴールデンパスは敷いただけでは道にならない ─ 企画部門のエンジニアが技術標準を事業価値に変えるまで
mhrtech
0
140
ポストモーテム! DDoSからサイトは守れた。 でもビジネスは守れなかった。
bengo4com
0
2.8k
脱金融のフューチャー・デザイン / Future Design Beyond Finance
ks91
PRO
0
150
kintone の AI コワーカーを、 Anthropic にエージェントを"ホストさせて"作った話 #devkinmeetup
sugimomoto
0
100
SRE Next 2026 何でも屋からの脱却
bto
0
620
ruby.wasmとPicoRuby.wasmに対応した仮想DOMライブラリを作ってる話 #kaigieffect_kaigi
sue445
PRO
0
140
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
41
2.6k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
260
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
470
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
190
Discover your Explorer Soul
emna__ayadi
2
1.2k
Building Adaptive Systems
keathley
44
3.1k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1k
The Language of Interfaces
destraynor
162
27k
The Spectacular Lies of Maps
axbom
PRO
1
850
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
330
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
460
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Transcript
backbone.js
Google上的趋势图
谁在用Backbone.js WordPress.com! LinkedIn mobile! Foursquare! Pandora
越来越复杂,强大的web应用 为什么要用Backbone.js
越来越复杂,强大的web应用 越来越多的数据像胶水一样耦合在Dom上 通过疯狂的尝试,让服务端的数据与UI保持同步 一堆jQuery选择器和回调函数,且绑定了写死的dom节点 为什么要用Backbone.js
为什么要用Backbone.js jQuery等类库仅仅完成DOM、事件、 异步等基本功能 有计划开发,结构化管理 ?
什么是Backbone.js 是一套轻量级的MVC框架 将杂乱的js代码结构化的管理起来 将数据、视图、逻辑分离 建立与服务端、视图之间的无缝连接
需要准备一些东西 Backbone.js源文件(6.3kb) 唯一必选依赖Underscore.js(4kb) Dom操作,jQuery或者Zepto二选一 它封装了对集合、数组、对象、函数的常用操作,就像jQuery封装DOM对 象一样,你能通过Underscore轻易地访问和操作JavaScript内部对象。
还提供了一些非常实用的函数方法,如:函数节流、模板解析等。
Backbone的特性 Model:数据对象,提供set和get操作内部属性。假如定义validate方法,每次set时候会执行,假 如没有通过校验会触发error事件,且终止set Collection:模型的集合,提供add和remove方法来操作集合内容。通过Undersore.js提供的方法 对数组进行高级操作。 View:UI逻辑块,并非传统意义上的HTML和模板。通过Undersore.js的_.template作为模板引擎。 通过jQuery作为选择器。自身提供events进行事件委托。
Router:使URL的hash片段跟app的状态联系在一起,使url可被分享、收藏。通过 Backbone.history可以支持历史记录。将路由和一些回调函数进行合理组织,可以形成整个应用的 Controller。
简单实例
简单实例-剖析 Model Collection
简单实例-剖析 todos-View App-View
简单实例-代码框架
简单实例-Model
简单实例-collection
简单实例-item view
简单实例-item view
简单实例-app view
Backbone.js的适用性 如果你正准备构建一个大型或复杂的单页Web应用,那么Backbone再适 合不过。 如果想将Backbone应用到你的网站页面中,且页面中并没有复杂的逻辑和 结构,那么这只会让你的页面更加繁琐和难以维护。
谢谢