angualrjs

  1. $rootScope是angularJS中最接近全局做用域的對象。在$rootScope上附加太多業務邏輯並非好主意,這與污染JavaScript的全局做用域是同樣的。
  2. $scope對象就是一個普通的JavaScript對象,咱們能夠在其上隨意修改或添加屬性。
  3. 在AngularJS應用的模板中使用多種標記
    • 指令:將DOM元素加強爲可複用的DOM組件的屬性或元素。 
    • 值綁定:模板語法{{ }}能夠將表達式綁定到視圖上。 
    • 過濾器:能夠在視圖中使用的函數,用來進行格式化。 
    • 表單控件:用來檢驗用戶輸入的控件。 
  4. 做用域有如下的基本功能: 
    • 提供觀察者以監視數據模型的變化; 
    • 提供觀察者以監視數據模型的變化; 
    • 能夠進行嵌套,隔離業務功能和數據;
    • 給表達式提供運算時所需的執行環境。
  5. $scope對象的生命週期處理有四個不一樣階段。
    • 建立
      在建立控制器或指令時,AngularJS會用$injector建立一個新的做用域,並在這個新建的控
      制器或指令運行時將做用域傳遞進去。編程

    • 連接
      當Angular開始運行時,全部的$scope對象都會附加或者連接到視圖中。全部建立$scope對
      象的函數也會將自身附加到視圖中。這些做用域將會註冊當Angular應用上下文中發生變化時需
      要運行的函數。
      這些函數被稱爲$watch函數,Angular經過這些函數獲知什麼時候啓動事件循環。函數

    • 更新
      當事件循環運行時,它一般執行在頂層$scope對象上(被稱做$rootScope),每一個子做用域
      都執行本身的髒值檢測。每一個監控函數都會檢查變化。若是檢測到任意變化,$scope對象就會觸
      髮指定的回調函數。 對象

    • 銷燬
      當一個$scope在視圖中再也不須要時,這個做用域將會清理和銷燬本身。
      儘管永遠不會須要清理做用域(由於Angular會爲你處理),可是知道是誰建立了這個做用域
      仍是有用的,由於你可使用這個$scope上叫作$destory()的方法來清理這個做用域。繼承

  6. 指令和做用域 
    • 指令在AngularJS中被普遍使用,指令一般不會建立本身的$scope,但也有例外。好比
      ng-controller和ng-repeat指令會建立本身的子做用域並將它們附加到DOM元素上。生命週期

    • 在指令內部建立的做用域被稱做孤立做用域。
    • 除了孤立做用域外,全部的做用域都經過原型繼承而來,也就是說它們均可以訪問父級做用
      域。若是熟悉面向對象編程,對這個機制應該不會陌生。事件

  7. 表達式
    • 全部的表達式都在其所屬的做用域內部執行,並有訪問本地$scope的權限;
    • 若是表達式發生了TypeError和ReferenceError並不會拋出異常; 
    • 不容許使用任何流程控制功能(條件控制,例如if/eles)
    • 能夠接受過濾器和過濾器鏈。 
  8. 插值字符串 ,$interpolate服務是一個能夠接受三個參數的函數?????
    • text(字符串):一個包含字符插值標記的字符串。 
    • mustHaveExpression(布爾型):若是將這個參數設爲true,當傳入的字符串中不含有表
      達式時會返回null。 ip

    • trustedContext(字符串) :AngularJS會對已經進行過字符插值操做的字符串經過
      $sec.getTrusted()方法進行嚴格的上下文轉義。作用域

相關文章
相關標籤/搜索