AngularJS入門示例之Hello World詳解
本文實(shí)例講述了AngularJS入門示例Hello World。分享給大家供大家參考,具體如下:
以前項(xiàng)目都是使用jQuery和原始的JavaScript,最近參加一個(gè)項(xiàng)目需要用到AngularJS、RequireJS等比較潮的框架。這里記錄自己的學(xué)習(xí)過程,雖然冠以原創(chuàng)之名,其實(shí)都是參考網(wǎng)上的一些資料,加上自己的一些實(shí)踐和理解。再?zèng)]有熟悉AngularJS之前,估計(jì)也不出什么高質(zhì)量的文章,只能算是學(xué)習(xí)筆記和備忘錄。練習(xí)使用的版本是1.2.25。
示例代碼如下:
<!doctype html>
<html lang="en" ng-app>
<head>
<meta charset="utf-8">
<title>Hello,World!</title>
<script src="angular1.2.25.js"></script>
</head>
<body>
<input type="text" ng-model="yourName">
<h1>Hello, {{yourName}}</h1>
</body>
</html>
用瀏覽器打開這個(gè)網(wǎng)頁,在文本框進(jìn)行輸入,發(fā)現(xiàn)界面會(huì)自動(dòng)實(shí)時(shí)顯示。如果用javascript或jquery,完成這么一個(gè)小功能,我們組要注冊(cè)監(jiān)聽事件,獲取text控件的值,然后將值塞入<h1>中顯示。而使用AngularJS,我們需要做的事情是:添加ng-app,添加ng-model,使用{{yourName}}顯示。很顯然,使用AngularJS要簡單的多,而且代碼更緊湊。下面我們簡單看下這3個(gè)東西的意思:
1、ng-app:它可以放在任何dom節(jié)點(diǎn)上,代表該結(jié)點(diǎn)以及它的所有子節(jié)點(diǎn)都在AngularJS的管理范圍之內(nèi);如果去掉這個(gè)標(biāo)記,發(fā)現(xiàn)AngularJS框架不會(huì)起效果。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Hello,World!</title>
<script src="angular1.2.25.js"></script>
</head>
<body>
<div ng-app>
<input type="text" ng-model="yourName">
<h1>Hello, {{yourName}}</h1>
</div>
<h1>Hello, {{yourName}}</h1>
</body>
</html>
這次我們把ng-app放到了<div>上,可以看到div內(nèi)部的<h1>能夠?qū)崟r(shí)顯示輸入的數(shù)據(jù),而外部的<h1>沒有效果??梢钥吹?,一個(gè)html頁面可以全部交予AngularJS來管理,也可以只讓AngularJS管理頁面的一部分,我們可以按需添加ng-app所在的dom節(jié)點(diǎn)。
2、ng-model:這個(gè)是AngularJS數(shù)據(jù)的雙向綁定特性。簡單點(diǎn)理解:告訴AngularJS這是個(gè)數(shù)據(jù)模型,你幫我存到內(nèi)存中。界面上修改數(shù)據(jù),內(nèi)存中數(shù)據(jù)也會(huì)自動(dòng)修改;修改內(nèi)存中的變量值,界面顯示也會(huì)自動(dòng)更改。這個(gè)特性顯然很方便,能夠保持?jǐn)?shù)據(jù)的一致性,避免我們自己加代碼來完成這個(gè)功能。
3、{{yourName}}:這個(gè)是框架提供的表達(dá)式語法,能夠顯示內(nèi)存中數(shù)據(jù)模型的值。這個(gè)跟struts2的<s:property>、<s:text>類似,就是用來顯示數(shù)據(jù)的。這種只是AngularJS定義的語法格式,跟JSP頁面中的EL表達(dá)式,struts2的OGNL很類似,就是一種數(shù)據(jù)的獲取機(jī)制。
更多關(guān)于AngularJS相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《AngularJS入門與進(jìn)階教程》及《AngularJS MVC架構(gòu)總結(jié)》
希望本文所述對(duì)大家AngularJS程序設(shè)計(jì)有所幫助。
- AngularJS使用ng-app自動(dòng)加載bootstrap框架問題分析
- AngularJS框架的ng-app指令與自動(dòng)加載實(shí)現(xiàn)方法分析
- AngularJS 在同一個(gè)界面啟動(dòng)多個(gè)ng-app應(yīng)用模塊詳解
- AngularJS ng-app 指令實(shí)例詳解
- 基于AngularJS實(shí)現(xiàn)頁面滾動(dòng)到底自動(dòng)加載數(shù)據(jù)的功能
- Angularjs通過指令監(jiān)聽ng-repeat渲染完成后執(zhí)行腳本的方法
- angularjs中ng-attr的用法詳解
- Angularjs中ng-repeat-start與ng-repeat-end的用法實(shí)例介紹
- AngularJS實(shí)現(xiàn)網(wǎng)站換膚實(shí)例
- AngularJS使用帶屬性值的ng-app指令實(shí)現(xiàn)自定義模塊自動(dòng)加載的方法
相關(guān)文章
angularjs創(chuàng)建彈出框?qū)崿F(xiàn)拖動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了angularjs創(chuàng)建彈出框?qū)崿F(xiàn)拖動(dòng)效果的相關(guān)資料,angularjs modal模態(tài)框創(chuàng)建可拖動(dòng)的指令,感興趣的小伙伴們可以參考一下2016-01-01
Ionic + Angular.js實(shí)現(xiàn)驗(yàn)證碼倒計(jì)時(shí)功能的方法
驗(yàn)證碼倒計(jì)時(shí)這個(gè)功能相信對(duì)大家每個(gè)人來說都不陌生,之前介紹了在Android中的實(shí)現(xiàn)方法,下面這篇文章主要給大家介紹了利用Ionic + Angular.js實(shí)現(xiàn)驗(yàn)證碼倒計(jì)時(shí)功能的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友們下面來一起看看吧。2017-06-06
angularJS利用ng-repeat遍歷二維數(shù)組的實(shí)例代碼
本篇文章主要介紹了angularJS利用ng-repeat遍歷二維數(shù)組的實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
AngularJS動(dòng)態(tài)綁定HTML的方法分析
這篇文章主要介紹了AngularJS動(dòng)態(tài)綁定HTML的方法,結(jié)合實(shí)例形式分析了AngularJS實(shí)現(xiàn)動(dòng)態(tài)綁定HTML的相關(guān)操作指令用法與使用注意事項(xiàng),需要的朋友可以參考下2016-11-11
Angular中$state.go頁面跳轉(zhuǎn)并傳遞參數(shù)的方法
這篇文章主要介紹了angular中$state.go頁面跳轉(zhuǎn)并傳遞參數(shù)的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-05-05
angularjs手動(dòng)識(shí)別字符串中的換行符方法
今天小編就為大家分享一篇angularjs手動(dòng)識(shí)別字符串中的換行符方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-10-10
AngularJS實(shí)現(xiàn)Model緩存的方式
這篇文章主要介紹了AngularJS實(shí)現(xiàn)Model緩存的方式,分享了多種AngularJS實(shí)現(xiàn)Model緩存的方法,感興趣的小伙伴們可以參考一下2016-02-02

