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 主站蜘蛛池模板: a视频在线免费观看| 精品亚洲国产成人av| 中文永久免费观看网站| 亚洲AV无码之日韩精品| 男女啪啪免费体验区| 亚洲精品国产精品乱码不卞 | 亚洲色丰满少妇高潮18p| 69堂人成无码免费视频果冻传媒| 暖暖在线视频免费视频| 亚洲国产精品成人精品无码区 | 亚洲国产美女视频| 中国在线观看免费国语版| 亚洲午夜一区二区三区| 日本牲交大片免费观看| 一级a性色生活片久久无少妇一级婬片免费放 | 亚洲大码熟女在线观看| 亚洲AⅤ永久无码精品AA| 色www永久免费网站| 亚洲免费视频在线观看| 亚洲精品动漫免费二区| 日韩在线观看免费完整版视频| 亚洲欧洲∨国产一区二区三区| 最近中文字幕大全中文字幕免费 | 久久狠狠躁免费观看| 国产成人亚洲综合网站不卡| 免费又黄又爽又猛的毛片 | 久久亚洲精品成人AV| 男男AV纯肉无码免费播放无码| 久久亚洲精品无码gv| 亚欧在线精品免费观看一区| 亚洲精品av无码喷奶水糖心| 亚洲成A人片在线观看中文| 国色精品va在线观看免费视频| 亚洲人成黄网在线观看| 亚洲成a人在线看天堂无码| 久久永久免费人妻精品| 国产成人 亚洲欧洲| 亚洲激情在线观看| 国产一级大片免费看| 色欲A∨无码蜜臀AV免费播| 亚洲变态另类一区二区三区|輸出結(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)推薦