體驗(yàn)jQuery和AngularJS的不同點(diǎn)及AngularJS的迷人之處
AngualrJS是一個很貼心的web應(yīng)用框架。它有很不錯的官方文檔和示例;經(jīng)過在現(xiàn)實(shí)環(huán)境中的測試著名的TodoMVC project,它在海量的框架中脫穎而出;而且網(wǎng)上到處都是很不錯演示或者展示。但是對于一個沒有接觸過和AngularJS相似的框架而且還是幾乎都在使用像jQuery這樣的JavaScript類庫的開發(fā)者來講,要從jQuery的思想轉(zhuǎn)變成AngularJS的思想是有點(diǎn)困難的。至少對于我來說是這樣的,所以我想要分享一些學(xué)習(xí)筆記希望幫到一些開發(fā)者。
本篇通過jQuery和Angular兩種方式來實(shí)現(xiàn)同一個實(shí)例,從而體驗(yàn)兩者的不同點(diǎn)以及AngularJS的迷人之處。
首先當(dāng)然需要引用jquery.js和angular.js文件。
■ 使用jQuery讓寫一個簡單的click事件
<button id="jquery-button">JQuery Button</button>
<div id="jquery-content">I am jquery content</div>
$(function(){
$("#jquery-button").click(function(){
$('#jquery-content').toggle();
})
})
如果我們想讓更多的div通過同一個點(diǎn)擊事件實(shí)現(xiàn)toggle呢?
--首先要在頁面中添加div,然后在js中添加相應(yīng)的代碼
<button id="jquery-button">JQuery Button</button>
<div id="jquery-content">I am jquery content</div>
<div id="jquery-content1">I am jquery content1</div>
$(function(){
$("#jquery-button").click(function(){
$('#jquery-content').toggle();
$('#jquery-content1').toggle();
})
})
在AngularJS中又是怎樣的一種情況呢?
■ 使用Angular來寫一個簡單的click事件
<div ng-app="app" ng-controller="AppCtrl as app">
<button ng-click="app.toggle()">Angular Button</button>
<div ng-hide="app.isHidden">Angular content</div>
</div>
var app = angular.module("app",[]);
app.controller("AppCtrl", function(){
var app = this;
app.isHidden = false;
app.toggle = function(){
app.isHidden = !app.isHidden;
}
})
如果我們想讓更多的div通過同一個點(diǎn)擊事件實(shí)現(xiàn)toggle呢?
--我們只要在頁面中添加一個div,通過ng-hide屬性來聲明 <div ng-app="app" ng-controller="AppCtrl as app"> <button ng-click="app.toggle()">Angular Button</button> <div ng-hide="app.isHidden">Angular content</div> <div ng-hide="app.isHidden">Angular content1</div> </div>
以上,通過簡單的例子,來比較jQuery和Angular的不同之處,我們可以發(fā)現(xiàn):AngularJS中通過聲明的方式來應(yīng)對變化,相比jQuery,AngularJS應(yīng)對變化的成本更低也更靈活。
相關(guān)文章
Angular服務(wù)Request異步請求的實(shí)例講解
今天小編就為大家分享一篇Angular服務(wù)Request異步請求的實(shí)例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08
如何在Angular8.0下使用ngx-translate進(jìn)行國際化配置
這篇文章主要介紹了如何在Angular8.0下使用ngx-translate進(jìn)行國際化配置,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
詳解Webstorm 下的Angular2.0開發(fā)之路(圖文)
這篇文章主要介紹了詳解Webstorm 下的Angular2.0開發(fā)之路(圖文) ,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-12-12
AngularJS基于ui-route實(shí)現(xiàn)深層路由的方法【路由嵌套】
這篇文章主要介紹了AngularJS基于ui-route實(shí)現(xiàn)深層路由的方法,涉及AngularJS路由嵌套操作相關(guān)實(shí)現(xiàn)步驟與技巧,需要的朋友可以參考下2016-12-12
AngularJS解決ng界面長表達(dá)式(ui-set)的方法分析
這篇文章主要介紹了AngularJS解決ng界面長表達(dá)式(ui-set)的方法,通過具體問題的分析并結(jié)合實(shí)例形式給出了AngularJS長表達(dá)式的相關(guān)使用技巧,需要的朋友可以參考下2016-11-11
在 Angular 中使用Chart.js 和 ng2-charts的示例代碼
本篇文章主要介紹了在 Angular 中使用Chart.js 和 ng2-charts的示例代碼,具有一定的參考價值,有興趣的可以了解一下2017-08-08

