對于一個在前端屬于純新手的我來說,Javascript都還是一知半解,要想直接上手angular JS,遇到的阻力還真是不少。不過我相信,只要下功夫,即使是反人類的設計也不是什么大的問題。
Okay,廢話不多說。為了弄明白angular JS為何物,我先是從Scope開始。那么什么是Scope呢?借用官方文檔的一段話:
看完后,類比到其他的編程語言上,感覺Scope就像是Data Model的作用域一樣,為Expressions的執行提供上下文,暫且先這么理解吧。
Scope的特性
接下來,看看Scope有哪些特性呢?
Scope提供$watch方法監視Model的變化。
Scope提供$apply方法傳播Model的變化。
Scope可以繼承,用來隔離不同的application components和屬性訪問權限。
Scope為Expressions的計算提供上下文。
對于這四點特性,因為我之前學習過ActionScript、C++、Java,所以第一、三、四點不難理解,唯獨第二點感覺有點云里霧里。本著打破沙鍋問到底的原則,我還是通過Google搜到了一些東西。對于有經驗的老手,板磚請輕拍!
源起Javascript
首先,乍一看,scope.apply()似乎就是一個使得bindings得到更新的普普通通的方法。但稍微多想一點,為什么我們需要它?一般在什么時候用它呢?用弄明白這兩個問題,還得從Javascript說起。在Javascript代碼里,都是按照一定順序來執行的,當輪到一個代碼片段執行的時候,瀏覽器就只會去執行當前的片段,不會做任何其他的事情。所以有時候一些做得不是很好的網頁,當點擊了某個東西之后會卡住,Javascript的工作方式就是會導致這一現象原因之一!下面我們有一段代碼來感受一下:
當加載Javascript代碼時,先先找一個一個id叫“clickMe”的按鈕,然后添加一個監聽器,然后設置超時。等待5秒,會彈出一個對話框。如果刷新頁面并立即點擊clickMe按鈕,會彈出一個對話框,如果你不點擊OK,timerComplete函數永遠沒有機會執行。
如何更新bindings
好了,扯了一些看似不相關的東西之后,我們回歸正題。angular JS是怎么知道什么時候數據的變化和頁面需要更新的呢?代碼需要知道什么時候數據被修改了,但是現在又沒有一種方法直接去通知說某個對象上的數據變了(盡管ECMAScript 5正在嘗試解決這一問題,但也還是處于實驗階段)。而目前比較主流的策略有以下有兩種解決方案。一種是需要用特殊的對象,讓所有的數據都只能通過調用對象的方法設置,而不是直接通過property指定。這樣的話,所有的修改就可以被記錄下來了,就知道什么時候頁面需要更新了。這樣做的弊端就是我們必須去繼承一個特殊的對象。對于賦值也只能通過object.set('key', 'value')而不是object.key=value的方式。在框架中,像EmberJS和KnockoutJS就是這么干的(雖然我都沒接觸過――亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
5278欧美一区二区三区| 亚洲午夜国产成人av电影男同| 国产精品视频网址| 91免费欧美精品| 国产亚洲精品美女久久久| 久久人人97超碰精品888| 色999日韩欧美国产| 亚洲欧美日韩中文在线制服| 久久精品国产亚洲一区二区| 国产精品av免费在线观看| 国产亚洲欧美日韩美女| 成人国产精品一区| 欧美激情亚洲综合一区| 精品福利免费观看| 九色91av视频| 成人黄色免费网站在线观看| 久久免费精品视频| 91久久精品美女| 成人激情视频免费在线| 伊人久久大香线蕉av一区二区| 久久伊人精品天天| 国产精品美女免费| 精品免费在线观看| 在线看欧美日韩| 国产午夜精品美女视频明星a级| 久久综合久久八八| 欧美日韩另类视频| 日韩视频一区在线| 欧美精品在线极品| 欧美成人免费网| 欧美www视频在线观看| 久久这里只有精品视频首页| 国产精品一区久久久| 亚洲欧洲日产国产网站| 欧美激情极品视频| 亚洲天堂开心观看| 正在播放亚洲1区| 欧美亚洲一级片| 日韩中文字幕在线视频| 韩国美女主播一区| 成人免费看吃奶视频网站| 国产精品最新在线观看| 日韩色av导航| 午夜剧场成人观在线视频免费观看| 色综合久久精品亚洲国产| 亚洲免费成人av电影| 久久久久北条麻妃免费看| 国产精品久久久久福利| 欧美亚洲免费电影| 日韩一区av在线| 国产91在线高潮白浆在线观看| 国产精品视频最多的网站| 欧美激情高清视频| www.日韩不卡电影av| 亚洲精品按摩视频| 91精品国产亚洲| 欧美日韩国产精品一区二区三区四区| 中文字幕日韩欧美| 91精品国产高清自在线看超| 91免费观看网站| 久久久久久久久久久人体| 国产精品久久久久久av福利| 欧美色欧美亚洲高清在线视频| 日韩欧美在线第一页| 国产精品视频1区| 亚洲色在线视频| 亚洲精品av在线| 亚洲精品91美女久久久久久久| 国产精品中文久久久久久久| 日韩福利在线播放| 亚洲视频在线播放| 18一19gay欧美视频网站| 国产欧美日韩中文| 国产精品国产三级国产aⅴ9色| 久久69精品久久久久久国产越南| 国产欧美一区二区三区视频| 亚洲裸体xxxx| 4p变态网欧美系列| 一区二区在线免费视频| 国产午夜一区二区| 岛国av一区二区在线在线观看| 亚洲综合成人婷婷小说| 欧美一级成年大片在线观看| 欧美性猛交xxxx乱大交极品| 成人黄色短视频在线观看| 欧美日韩亚洲视频| 亚洲精品成人久久电影| 青草青草久热精品视频在线网站| 国产免费一区视频观看免费| 日韩一区av在线| 欧美大成色www永久网站婷| 亚洲国产黄色片| 色婷婷久久一区二区| 亚洲成人激情在线| 91久久久久久久久久久| 国产91精品不卡视频| 精品国产区一区二区三区在线观看| 欧美视频国产精品| 国产精品99一区| 国产大片精品免费永久看nba| 91精品中国老女人| 国产成人精品在线| 亚洲xxx视频| 亚洲黄一区二区| 色综合色综合网色综合| 国产丝袜视频一区| 午夜美女久久久久爽久久| 奇米四色中文综合久久| 亚洲自拍偷拍福利| 欧美日韩国产一区二区三区| 欧美日韩一区二区三区在线免费观看| 欧美大全免费观看电视剧大泉洋| 亚洲毛片一区二区| 亚洲国产精品人人爽夜夜爽| 91av在线看| 欧美体内谢she精2性欧美| 91精品免费久久久久久久久| 精品日本高清在线播放| 91免费在线视频网站| 亚洲人高潮女人毛茸茸| 国内精品伊人久久| 97久久精品在线| 国产亚洲精品久久久久久777| 91香蕉国产在线观看| 成人黄色大片在线免费观看| 欧美国产日本高清在线| 国产中文欧美精品| 欧美成人午夜激情| 欧美性生交大片免费| 日韩一区二区三区国产| 国产精品久久久久久久久久三级| 7m精品福利视频导航| 午夜精品一区二区三区视频免费看| 丰满岳妇乱一区二区三区| 日韩精品在线观看一区二区| 国产日本欧美一区二区三区在线| 国产人妖伪娘一区91| 91精品国产色综合久久不卡98| 国产91热爆ts人妖在线| 日韩在线免费视频观看| 色视频www在线播放国产成人| 日韩av影片在线观看| 日韩视频免费观看| 夜夜嗨av一区二区三区免费区| 欧美午夜xxx| 亚洲国产女人aaa毛片在线| 成人在线一区二区| 欧美成人免费一级人片100| 精品丝袜一区二区三区| 国产精品成人在线| 欧美自拍大量在线观看| 97高清免费视频| 精品小视频在线| 国产91色在线|免| 亚洲美女www午夜| 欧美日韩黄色大片| 日本亚洲精品在线观看| 精品一区二区三区四区在线| 欧美成人高清视频| 亚洲国产欧美精品| 91精品久久久久久久久| 日韩精品在线免费| 69久久夜色精品国产7777| 欧美成人精品在线观看|