国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
AngularJS自學(xué)之路(二)

模塊

使用模塊帶來的好處
1. 保持全局命名空間的清潔;
2. 編寫測試代碼更容易,并能保持其清潔,以便更容易找到互相隔離的功能;
3. 易于在不同應(yīng)用間復(fù)用代碼;
4. 使應(yīng)用能夠以任意順序加載代碼的各個部分。
AngularJS允許我們使用angular.module()方法來聲明模塊,這個方法能夠接受兩個參數(shù),
第一個是模塊的名稱,第二個是依賴列表,也就是可以被注入到模塊中的對象列表。

//這個方法相當于AngularJS模塊的setter方法,是用來定義模塊的。angular.module('myApp', []);
  • 1
  • 2

調(diào)用這個方法時如果只傳遞一個參數(shù),就可以用它來引用模塊。例如,可以通過以下代碼來
引用myApp模塊:

// 這個方法用于獲取應(yīng)用//這個方法相當于AngularJS模塊的getter方法,用來獲取對模塊的引用。angular.module('myApp')
  • 1
  • 2
  • 3

作用域

應(yīng)用的作用域是和應(yīng)用的數(shù)據(jù)模型相關(guān)聯(lián)的,同時作用域也是表達式執(zhí)行的上下文。$scope對象是定義應(yīng)用業(yè)務(wù)邏輯、控制器方法和視圖屬性的地方。

作用域是視圖和控制器之間的膠水。在應(yīng)用將視圖渲染并呈獻給用戶之前,視圖中的模板會和作用域進行連接,然后應(yīng)用會對DOM進行設(shè)置以便將屬性變化通知給AngularJS。這個功能讓XHR請求等promise對象的實現(xiàn)變得非常容易。

作用域是應(yīng)用狀態(tài)的基礎(chǔ)?;趧討B(tài)綁定,我們可以依賴視圖在修改數(shù)據(jù)時立刻更新 $scope,也可以依賴 scope在其發(fā)生變化時立刻重新渲染視圖。

作用域提供了監(jiān)視數(shù)據(jù)模型變化的能力。它允許開發(fā)者使用其中的apply機制,將數(shù)據(jù)模型的變化在整個應(yīng)用范圍內(nèi)進行通知。我們在作用域的上下文中定義和執(zhí)行表達式,同時它也是將事件通知給另一個控制器和應(yīng)用其他部分的中介。

視圖和$scope的世界

AngularJS啟動并生成視圖時,會將根ng-app元素同$rootScope進行綁定。rootScope是所有scope對象的最上層。

$scope對象就是一個普通的JavaScript對象,我們可以在其上隨意修改或添加屬性。

$scope對象在AngularJS中充當數(shù)據(jù)模型,但與傳統(tǒng)的數(shù)據(jù)模型不一樣,scope并不負責(zé)處理和操作數(shù)據(jù),它只是視圖和HTML之間的橋梁,它是視圖和控制器之間的膠水。

作用域的基本功能

  1. 提供觀察者以監(jiān)視數(shù)據(jù)模型的變化;
  2. 可以將數(shù)據(jù)模型的變化通知給整個應(yīng)用,甚至是系統(tǒng)外的組件;
  3. 可以進行嵌套,隔離業(yè)務(wù)功能和數(shù)據(jù);
  4. 給表達式提供運算時所需的執(zhí)行環(huán)境。

作用域包含了渲染視圖時所需的功能和數(shù)據(jù),它是所有視圖的唯一源頭??梢詫⒆饔糜蚶斫獬梢晥D模型(view model)。

$scope對象的生命周期處理有四個不同階段。

創(chuàng)建

在創(chuàng)建控制器或指令時,AngularJS會用$injector創(chuàng)建一個新的作用域,并在這個新建的控制器或指令運行時將作用域傳遞進去。

鏈接

當Angular開始運行時,所有的$scope對象都會附加或者鏈接到視圖中。所有創(chuàng)建scope對象的函數(shù)也會將自身附加到視圖中。這些作用域?qū)援擜ngular應(yīng)用上下文中發(fā)生變化時需要運行的函數(shù)。

更新

當事件循環(huán)運行時,它通常執(zhí)行在頂層$scope對象上(被稱作rootScope),每個子作用域都執(zhí)行自己的臟值檢測。每個監(jiān)控函數(shù)都會檢查變化。如果檢測到任意變化,scope對象就會觸發(fā)指定的回調(diào)函數(shù)。

銷毀

當一個$scope在視圖中不再需要時,這個作用域?qū)謇砗弯N毀自己。

盡管永遠不會需要清理作用域(因為Angular會為你處理),但是知道是誰創(chuàng)建了這個作用域還是有用的,因為你可以使用這個$scope上叫做destory()的方法來清理這個作用域。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
AngularJS開發(fā)指南04:核心概覽 | AngularJS中文社區(qū)
AngularJS進階(九)控制器controller之間如何通信
AngularJs路由:ngRoute
為什么我棄用Angular,轉(zhuǎn)向React
AngularJS教程之二 雙向數(shù)據(jù)綁定
AngularJS 數(shù)據(jù)綁定與 $digest 循環(huán) | 天碼營
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服