ng-app屬性聲明所有被其包含的內(nèi)容都屬于這個(gè)angularJs應(yīng)用,只有被具有ng-app屬性的DOM元素包含的元素才會受angularJs 影響。
mvc 是一種軟件架構(gòu)設(shè)計(jì)模式。
angularJs之所以會有雙向數(shù)據(jù)綁定是用到了臟檢查技術(shù) 臟檢查時(shí)檢查數(shù)據(jù)模型變化的有效手段。
angualrJs中只要遇到$符號 都可以把他看作一個(gè)angularJs對象。
$scope對象是一個(gè)簡單的js對象 其中的屬性可以被視圖訪問 也可以同控制器進(jìn)行交互。
雙向數(shù)據(jù)綁定意味著如果試圖改變了某個(gè)值 數(shù)據(jù)模型會通過臟檢查觀察到這個(gè)變化 而如果數(shù)據(jù)模型改變了某個(gè)值 視圖也會依據(jù)變化重新渲染。
dom元素上的ng-controller聲明所有被它包含的元素都屬于某個(gè)控制器。
angularJs允許我們使用angular.module()方法來聲明模塊
聲明模塊之后我們就可以在angular.module('myApp')返回的對象上創(chuàng)建我們的應(yīng)用了。
作用域scope是構(gòu)成angularJS應(yīng)用的核心基礎(chǔ) $rootscope是angularJS中最接近全局作用域的對象。
$scope的所有屬性都可以被視圖訪問到 $scope 并不負(fù)責(zé)處理和操作數(shù)據(jù) 它只是視圖和html之間的橋梁 它是視圖和控制器之間的膠水。
ng-controller 可以為dom元素創(chuàng)建一個(gè)新的$scope對象 并將它嵌套在$rootscope中。
$scope 對象的聲明周期處理有四個(gè)不同的階段 創(chuàng)建 鏈接 更新 銷毀
創(chuàng)建 :在創(chuàng)建控制器或指令時(shí) angularjs 會創(chuàng)建一個(gè)新的作用域 并在這個(gè)新建的控制器函數(shù)運(yùn)行時(shí)將作用域傳遞進(jìn)去 你無需知道它是如何創(chuàng)建的 使用它即可。
指令通常不會創(chuàng)建自己的$scope 但也有例外 比如ng-controller和ng-repeat指令會創(chuàng)建自己的子作用域并將它們附加到dom元素上。
angularjs中的控制器是一個(gè)函數(shù) 。
angularjs 同其他js框架最主要的一個(gè)區(qū)別就是控制器并不適合用來執(zhí)行dom操作 格式化 或 數(shù)據(jù)操作 以及除存儲數(shù)據(jù)模型之外的狀態(tài)維護(hù)操作 它只是視圖和$scope之間的橋梁。
新聞熱點(diǎn)
疑難解答