架構基礎

這裏寫圖片描述


代理服務器是介於客戶端和Web服務器之間的另一臺服務器;
代理服務器對外就表現爲一個反向代理服務器;

  • 當客戶機向站點提出請求時,請求將轉到代理服務器。
  • 然後,代理服務器通過防火牆中的特定通路,將客戶機的請求發送到內容服務器。
  • 內容服務器再通過該通道將結果回傳給代理服務器

  • app.get相當於在服務器註冊了一個監聽get請求事件的偵聽器,當請求的URL滿足第一個參數時,執行後面的回調函數,該過程是異步的。
  • 路由是一個可以被內部編譯成正則表達式的簡單字符串,可以通過req.params進行訪問;
  • 一個應用中可以定義多個路由,我們可以控制以令其轉向下一個路由,Express提供了第三個參數即next()函數;

AngularJS
這裏寫圖片描述

scope 作用域梳理

  • 基於作用域視圖在修改數據時會立刻更新 $scope,
  • 同樣的 $scope 發生改變時也會立刻重新渲染視圖.
  • 有了 scope 這樣一個橋樑,應用的業務代碼可以都在 controller 中,而數據都存放在controller 的 $scope 中.
  • scope 對象在 AngularJS 中充當數據模型的作用,也就是一般 MVC 框架中 Model 得角色.但又不完全與通常意義上的數據模型一樣,因爲 $scope 並不處理和操作數據,它只是建立了視圖和 HTML 之間的橋樑,讓視圖和 Controller 之間可以友好的通訊.

這裏寫圖片描述

$scope 的生命週期有4個階段:

1 創建

控制器或者指令創建時, AngularJS 會使用 $injector 創建一個新的作用域,然後在控制器或指令運行時,將作用域傳遞進去.

2 鏈接

AngularJS 啓動後會將所有 scope, scope 對象的函數也會被附加到視圖上.這些作用域將會註冊當 AngularJS 上下文發生變化時需要運行的函數.也就是 $watch 函數, AngularJS 通過這些函數或者何時開始事件循環.

3 更新

一旦事件循環開始運行,就會開始執行自己的髒值檢測.一旦檢測到變化,就會觸發 $scope 上指定的回調函數

4 銷燬

通常來講如果一個 scope 在視圖中不再需要, AngularJS 會自己清理它.當然也可以通過 $destroy() 函數手動清理.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章