AngularJs GitHub: https://github.com/angular/angular.js/
AngularJs下載地址:https://angularjs.org/
摘要:Directive(指令)筆者認(rèn)為是AngularJ非常強(qiáng)大而有有用的功能之一。它就相當(dāng)于為我們寫(xiě)了公共的自定義DOM元素或CLASS屬性或ATTR屬性,并且它不只是單單如此,你還可以在它的基礎(chǔ)上來(lái)操作scope、綁定事件、更改樣式等。通過(guò)這個(gè)Directive,我們可以封裝很多公共指令,比如分頁(yè)指令、自動(dòng)補(bǔ)全指令等等。然后在HTML頁(yè)面里只需要簡(jiǎn)單的寫(xiě)一行代碼就可以實(shí)現(xiàn)很多強(qiáng)大的功能。一般情況下,需要用Directive有下面的情景:
1. 使你的Html更具語(yǔ)義化,不需要深入研究代碼和邏輯即可知道頁(yè)面的大致邏輯。
2. 抽象一個(gè)自定義組件,在其他地方進(jìn)行重用。
一、Directive的定義及其使用方法
AngularJs的指令定義大致如下
Directive可以放置于元素名、屬性、class、注釋中。下面是引用myDir這個(gè)directive的等價(jià)方式。(但很多directive都限制為“屬性”的使用方式)
directive-name="exp">//屬性 directive-name: exp;">//class//元素 //注釋
如下一個(gè)實(shí)例 :
輸出結(jié)果:AngularJS入門(mén)學(xué)習(xí)
另一種辦法緩存是:
使用實(shí)例如下:
AngularJS入門(mén)學(xué)習(xí) = 局部 scope 屬性
= 通過(guò) directive 的 attr 屬性的值在局部 scope 的屬性和父 scope 屬性名之間建立雙向綁定。
意思是,當(dāng)你想要一個(gè)雙向綁定的屬性的時(shí)候,你可以使用=來(lái)引入外部屬性。無(wú)論是改變父 scope 還是隔離 scope 里的屬性,父 scope 和隔離 scope 都會(huì)同時(shí)更新屬性值,因?yàn)樗鼈兪请p向綁定的關(guān)系。示例代碼:
AngularJS入門(mén)學(xué)習(xí) 另外還有一些特殊的服務(wù)(參數(shù))可以注入
(1)$scope,與指令元素相關(guān)聯(lián)的作用域
(2)$element,當(dāng)前指令對(duì)應(yīng)的 元素
(3)$attrs,由當(dāng)前元素的屬性組成的對(duì)象
(4)$transclude,嵌入鏈接函數(shù),實(shí)際被執(zhí)行用來(lái)克隆元素和操作DOM的函數(shù)
注意: 除非是用來(lái)定義一些可復(fù)用的行為,一般不推薦在這使用。
指令的控制器和link函數(shù)(后面會(huì)講)可以進(jìn)行互換。區(qū)別在于,控制器主要是用來(lái)提供可在指令間復(fù)用的行為但link鏈接函數(shù)只能在當(dāng)前內(nèi)部指令中定義行為,且無(wú)法再指令間復(fù)用。Top 主站蜘蛛池模板: 99re在线这里只有精品免费| 免费视频淫片aa毛片| 亚洲av日韩av综合| 国产大片91精品免费看3| 成人免费AA片在线观看| 亚洲AV无码XXX麻豆艾秋| 久久精品夜色国产亚洲av| 免费精品国产自产拍在| 亚洲av丰满熟妇在线播放| 在线观看日本免费a∨视频| 一级一看免费完整版毛片| 亚洲中文无码线在线观看| 亚洲综合亚洲综合网成人| 2021久久精品免费观看| a级毛片免费观看网站| 亚洲av成人一区二区三区| 国产专区一va亚洲v天堂| 欧亚一级毛片免费看| 亚洲国产成人精品无码久久久久久综合| 国产无遮挡色视频免费观看性色| 亚洲国产精品久久人人爱| 精品国产人成亚洲区| 毛色毛片免费观看| 日本一区二区免费看| 手机永久免费的AV在线电影网| 亚洲国产视频一区| 亚洲国产精品VA在线看黑人| 午夜免费福利影院| 1000部拍拍拍18免费网站| 最近的2019免费中文字幕| mm1313亚洲国产精品无码试看 | 亚洲精品国产电影| 国国内清清草原免费视频99| 欧洲人成在线免费| 一个人看的www视频免费在线观看| 亚洲AV日韩综合一区尤物| 久久久亚洲欧洲日产国码二区 | 日本一道一区二区免费看 | ww在线观视频免费观看| 中国黄色免费网站| 一级成人a做片免费|輸出結(jié)果:AngularJS入門(mén)學(xué)習(xí)
并且在控制臺(tái)下輸出hello everyone
讓我們看看$transclude();在這里,它可以接收兩個(gè)參數(shù),第一個(gè)是$scope,作用域,第二個(gè)是帶有參數(shù)clone的回調(diào)函數(shù)。而這個(gè)clone實(shí)際上就是嵌入的內(nèi)容(經(jīng)過(guò)jquery包裝),可以在它上做很多DOM操作。
它還有最簡(jiǎn)單的用法就是
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
學(xué)習(xí)AngularJs:Directive指令用法(完整版)_AngularJS
學(xué)習(xí)AngularJs:Directive指令用法(完整版)_AngularJS:本教程使用AngularJs版本:1.5.3 AngularJs GitHub: https://github.com/angular/angular.js/ AngularJs下載地址:https://angularjs.org/ 摘要:Directive(指令)筆者認(rèn)為是AngularJ非常強(qiáng)大而有有用的功能之一。它就相當(dāng)于為我們寫(xiě)了推薦度:
- 熱門(mén)焦點(diǎn)
最新推薦
猜你喜歡
熱門(mén)推薦