大家好,我是IT修真院成都分院第六期的學員李興,一枚正直純潔善良的WEB前端程序員。
今天給大家分享一下,修真院官網(wǎng)JS任務8,ANGULAR自帶指令有哪些?
1.背景介紹
AngularJS 通過被稱為 指令 的新屬性來擴展 HTML。
AngularJS 通過內(nèi)置的指令來為應用添加功能。
AngularJS 允許你自定義指令。
2.知識剖析
angular指令分為:內(nèi)置指令 && 自定義指令。
內(nèi)置指令:AngularJS 指令是擴展的 HTML 屬性,帶有前綴 ng-。
例如:

自定義指令:除了 AngularJS 內(nèi)置的指令外,我們還可以創(chuàng)建自定義指令。 你可以使用 .directive 函數(shù)來添加自定義的指令。 要調(diào)用自定義指令,HTML 元素上需要添加自定義指令名。
例如:

angular自帶的指令,共有60多個。
AngularJS提供了一系列內(nèi)置指令。其中一些指令重載了原生的HTML元素,比如 form 和 a 標簽,當在HTML中使用標簽時,并不一定能明確看出是否在使用指令。
例如, form 標簽被從底層擴展了一系列高級功能,包括表單驗證等,原生HTML表單并不會提供這些功能。其他內(nèi)置指令通常以ng為前綴,很容易識別。
所有以ng前綴開頭作為命名空間的指令都是AngularJS提供的內(nèi)置指令,因此不要把你自己開發(fā)的指令以這個前綴命名。
常用的內(nèi)置指令:
ng-app: 使用該指令自動啟動一個AngularJS應用。ng-app指令指定的應用程序的根元素,通常放置在網(wǎng)頁的根元素如body或html 標簽。
ng-controller:該指令用于實例化指定的控制器對象。ngController指定一個Controller類,這個類控制業(yè)務邏輯和模型的在視圖的綁定。
ng-class:指定 HTML 元素使用的 CSS 類,ngclass指令允許你動態(tài)設(shè)置CSS類在一個HTML元素的數(shù)據(jù)綁定表達式,代表所有的類被添加。
ng-click: 定義元素被點擊時的行為
ng-model: 綁定 HTML 控制器的值到應用數(shù)據(jù)
ng-bind:綁定 HTML 元素到應用程序數(shù)據(jù)
ng-repeat: 定義集合中每項數(shù)據(jù)的模板
3.常見問題
指令的優(yōu)先級
ng-if和ng-show之間的區(qū)別
4.解決方案
指令的優(yōu)先級
優(yōu)先級參數(shù)可以被設(shè)置為一個數(shù)值。大多數(shù)指令會忽略這個參數(shù),使用默認值0,但也有些 場景設(shè)置高優(yōu)先級是非常重要甚至是必須的。例如, ngRepeat將這個參數(shù)設(shè)置為1000,這樣就可 以保證在同一元素上,它總是在其他指令之前被調(diào)用。 如果一個元素上具有兩個優(yōu)先級相同的指令,聲明在前面的那個會被優(yōu)先調(diào)用。如果其中一 個的優(yōu)先級更高,則不管聲明的順序如何都會被優(yōu)先調(diào)用:具有更高優(yōu)先級的指令總是優(yōu)先運行。
ng-if和ng-show之間的區(qū)別
angularJS中的ng-show、ng-hide、ng-if指令都可以用來控制dom元素的顯示或隱藏。ng-show和ng-hide根據(jù)所給表達式的值來顯示或隱藏HTML元素。 當賦值給ng-show指令的值為false時元素會被隱藏,值為true時元素會顯示。ng-hide功能類似,使用方式相反。元素的顯示或隱藏是通過改變CSS的display屬性值來實現(xiàn)的。
ng-if指令可以根據(jù)表達式的值在DOM中生成或移除一個元素。如果賦值給ng-if的表達式的值是false,那對應的元素將會從DOM中移除, 否則生成一個新的元素插入DOM中。ng-if同no-show和ng-hide指令最本質(zhì)的區(qū)別是,它不是通過CSS顯示或隱藏DOM節(jié)點,而是刪除或者新增結(jié)點。
5.編碼實戰(zhàn)
6.擴展思考
7.參考文獻
angularJS權(quán)威教程
菜鳥教程
PPT鏈接:https://ptteng.github.io/PPT/PPT/JS-08-angular%20directives.html#/
視頻鏈接:https://v.qq.com/x/page/r0516gbg6dl.html
今天的分享就到這里啦,歡迎大家點贊、轉(zhuǎn)發(fā)、留言、拍磚~
技能樹.IT修真院
“我們相信人人都可以成為一個工程師,現(xiàn)在開始,找個師兄,帶你入門,掌控自己學習的節(jié)奏,學習的路上不再迷?!?。
這里是技能樹.IT修真院,成千上萬的師兄在這里找到了自己的學習路線,學習透明化,成長可見化,師兄1對1免費指導??靵砼c我一起學習吧?!