AngularJS

框架: 對程序員的限制高
庫: jquery,bootstrap —— 使用靈活,對程序員的限制少
它是MVC框架 精確定義是MVVM框架 mv*
SPA (single page application) 移動端
MVC:
Model(模型)表示應用程序核心(比如數據庫記錄列表)。
View(視圖)顯示數據(數據庫記錄)。
Controller(控制器)處理輸入(寫入數據庫記錄)。

MVC 分離:
1.數據、邏輯、 表現層代碼的分離
2.分工
**學好:它最核心的核心的東西就是數據
以前寫JS:存在大量的重復勞動
window 事件 .....
Angular:避免了重復勞動,讓程序員更加關注需求的本質和實現。
基本用法:
Angular指令:
以 ng 開頭。
是否需要服務器環境——最好
oninput是input值改變的時候觸發
1、ng-app
angular管轄的范圍
2、ng-model
數據,數據模型—— 數據從哪來
3、ng-bind
數據綁定 —— 數據到哪去
4、表達式{{a}}
*Angular 和 原生的JS——不互通(事件、函數),可以解決。
5、ng-click
事件: ng-mouseover ....
* 只關注數據
6、ng-init
數據初始化
7、ng-repeat 循環
循環數組:
ng-repeat="item in arr"
{{item}} —— 數組中的每一項
循環JSON:
ng-repeat="(key,value) in json"
{{key}} —— json中的key
{{value}} —— json中的value
ng-repeat:
數組:
(key,value) in arr
key—— 索引
value —— 每一項
json:
(key,value) in json
key 鍵名
value 鍵值
8、數組的索引: $index 獲取本元素的索引
*在數組里,默認情況下不允許出現重復的數字 如果有重復的會報錯
track by 重新指定數組中的key
以前:(key,value) in arr
現在:item in arr track by $index
9、過濾器 filter
currency : 貨幣的filter
參數: currency:'¥'
date:
date:'yyyy MM dd HH(hh) mm ss'

Angular:
1、和原生的JS 是不互通 —— 可以得解決
2、和傳統的開發方式完全不同——只要盯住數據,數據是核心
不互通:
1)函數不互通
Number 示例
2)變量不互通
全局變量示例
3)事件不互通

MVC—— C
控制器: Controller
1)定義模塊
angular.module(模塊名,所依賴的其它模塊);
let mod = angular.module('mod1',[]);
2)引用模塊
ng-app="模塊名"
3)定義Controller
mod.controller('控制器名',回調函數($scope){
//控制器的代碼
});
4)引用controller
ng-controller="ctr1"

*所有的數據都放在$scope

$scope : 依賴項

Angular:
1)雙向綁定
2)依賴注入
Controller:
1)放代碼
2)原生和angular之間的橋梁 —— 在controller中可以使用原生代碼
*一個頁面中,可以有多個模塊
*在一個模塊中,可以有多個控制器
*為什么不互通:因為angular的東西都在$scope身上。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容