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