前幾天想用phonegap開發一些HTML5應用,選擇了ionic框架,覺得ionic框架的感覺很舒服,不想是用bootstrap開發的應用似的手機網站的感覺。
ionic是基於Angular.js開發的,我對前端的認識也不是很深刻,還是停留在Node.js的認知,雖然聽說過Angular.js也沒有精力去研究一下,這次寫一下Angular.js的學習過程。共勉。
通常我們會有HTML來構建靜態的應用,會有兩種形式來做HTML的動態效果
1、類庫:例如jQuery可以調用一些接口,然後我們來確定什麼時候來使用該類庫
2、框架:這是已經實現了的一些功能的應用,我們在使用時只需要提供填充業務邏輯即可。
Angular.js通過使用標識符的結構來使瀏覽器識別更多的語法,包括:
使用DOM控制結構來實現迭代或者隱藏DOM片段;
支持表單和表單的驗證;
能將邏輯代碼關聯到相關的DOM元素上;
能將HTML分組成可重用的組件。
第一個例子就是Hello World實例 (其實我下載Angular也打不開官網,回家有mac掛VPN下載再說...給共享一下)
<!doctype html>
<html ng-app>
<head>
<script src="js/angular.min.js"></script>
</head>
<body>
Hello {{'World'}}!
</body>
</html>
哎,<html ng-app>是什麼意思?不是<html lang="en">麼?
這個ng-app的意思是使用angular.js處理整個頁面並且引導應用,那麼這個頁面就是angular.js處理中的文件了。
<script src="js/angular.min.js"></script>
這裏是載入angular.js腳本,接下來
Hello {{'World'}}!
{{}}內部的是綁定的表達式,這個表達式是就是‘world’。
那麼這些已經瞭解了就可以創建更復雜的Hello World了,例如:
<!doctype html>
<html ng-app>
<head>
<script src="js/angular.min.js"></script>
</head>
<body>
Your name: <input type="text" ng-model="yourname" placeholder="World">
<hr>
Hello {{yourname || 'World'}}!
</body>
</html>
此時就不需要註冊一個監聽或者事件處理程序了。
angular.js的應用的模板(template)即可以使用我們自己的HTML模板,而且在邏輯結構上也與普通的AJAX有所差異以及不需要綁定任何監聽事件。