欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

angular 動(dòng)態(tài)組件類型詳解(四種組件類型)

 更新時(shí)間:2017年02月22日 08:52:40   作者:miaowwwww  
這篇文章給大家講解四種組件類型,非常不錯(cuò),具有參考借鑒價(jià)值,對(duì)angular 動(dòng)態(tài)組件類型感興趣的朋友參考下吧

組件類型1:純函數(shù)功能,而沒(méi)有視圖部分,即Factory(類似于$http)

promise.component.html

常見(jiàn)的有內(nèi)置的$http,$q之類的。一般使用promise與作用域進(jìn)行交互

組件類型2:不是常駐于視圖,而是動(dòng)態(tài)插入的、有UI的一類組件,有輸入交互、不常被調(diào)用(類似于Model對(duì)話框)

factory.component.html

并發(fā)性。這里收到es6的啟發(fā)。在factory內(nèi)使用了構(gòu)造函數(shù),來(lái)區(qū)分不同的實(shí)例。當(dāng)然,factory接口返回的類型要根據(jù)需求來(lái)定:僅僅是一個(gè)promise?還是返回一整個(gè)組件的實(shí)例

數(shù)據(jù)驅(qū)動(dòng)。factory內(nèi)部我使用了this.scope = $rootScope.$new()。并把每個(gè)實(shí)例的模板和作用域進(jìn)行綁定$compile(html())(scope)。感謝毛總,這招真是方便。我們能夠真正使用到angular的精髓:用數(shù)據(jù)來(lái)驅(qū)動(dòng)我們的視圖了

交互。該demo因?yàn)樾枰c用戶進(jìn)行交互,因此返回了一個(gè)promise給調(diào)用者。當(dāng)然實(shí)際要看情況。

作用域。由于該組件并不常常需要被調(diào)用,因此一旦組件'close'(從視圖上消失),就scope.$destroy()、instance.remove()

組件類型3:不常駐于視圖,但會(huì)被經(jīng)常調(diào)用,而且是動(dòng)態(tài)插入的、無(wú)輸入交互、有UI的一類組件(類似于popover)

factory.component2.html

對(duì)比。與上類型組件對(duì)比,該類組件更容易被調(diào)用(類似于微信右上角的popover)
并發(fā)性。要求更高,稍復(fù)雜。因此返回組件的實(shí)例,讓開(kāi)發(fā)者可用調(diào)用組件內(nèi)部的方法(open/close/...)。同時(shí),鑒于需求特殊性,在open()方法處我傳入了$event作為UI參數(shù)

作用域。由于是隱藏地常駐與視圖,因此只當(dāng)路由切換時(shí)才注銷實(shí)例。scope.$watch('$stateChangeSuccess', function(){scope.destroy()})

組件實(shí)例。賦值給作用域的變量 $scope.instance = Mypop.init()

組件類型4:實(shí)例之間存在某種關(guān)系、不常駐于視圖,動(dòng)態(tài)插入、只有視覺(jué)交互、有UI的一類組件(類似于ant design的Notification)

factory.component.3.html

對(duì)比。與上類組件對(duì)比,組件的每個(gè)實(shí)例之間需要存在某種隊(duì)列關(guān)系,具體操作方法請(qǐng)參考上面的例子。

實(shí)例關(guān)系。如何維護(hù)實(shí)例之間的關(guān)系?筆者比較笨的方法是開(kāi)啟另一個(gè)factory實(shí)例,存放一個(gè)實(shí)例數(shù)據(jù),來(lái)維護(hù)實(shí)例之間的關(guān)系var _sl = scope.list = []。然后該factory具備操作實(shí)例隊(duì)列的一些方法 _sl.push(token)或者 _sl.shift()。同時(shí)每個(gè)實(shí)例都會(huì)監(jiān)聽(tīng)這個(gè)實(shí)例隊(duì)列 _s.$watchCollection('instanceList', function(){...})

相關(guān)文章

  • Angular5集成eventbus的示例代碼

    Angular5集成eventbus的示例代碼

    這篇文章主要介紹了Angular5集成eventbus的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • Angular.js?實(shí)現(xiàn)帶手柄自由調(diào)整頁(yè)面大小的功能

    Angular.js?實(shí)現(xiàn)帶手柄自由調(diào)整頁(yè)面大小的功能

    這篇文章主要介紹了Angular.js?實(shí)現(xiàn)帶手柄自由調(diào)整頁(yè)面大小的功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-12-12
  • AngularJS中的指令全面解析(必看)

    AngularJS中的指令全面解析(必看)

    下面小編就為大家?guī)?lái)一篇AngularJS中的指令全面解析(必看)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-05-05
  • AngularJS基礎(chǔ) ng-keyup 指令簡(jiǎn)單示例

    AngularJS基礎(chǔ) ng-keyup 指令簡(jiǎn)單示例

    本文主要介紹AngularJS ng-keyup 指令,這里對(duì)ng-keyup指令的基本資料進(jìn)行了整理,并且附有代碼示例,有需要的朋友可以看一下
    2016-08-08
  • 使用AngularJS和PHP的Laravel實(shí)現(xiàn)單頁(yè)評(píng)論的方法

    使用AngularJS和PHP的Laravel實(shí)現(xiàn)單頁(yè)評(píng)論的方法

    這篇文章主要介紹了使用AngularJS和PHP的Laravel實(shí)現(xiàn)單頁(yè)評(píng)論的方法,本文的示例是前端JavaScript和后端PHP聯(lián)合編程的典范,需要的朋友可以參考下
    2015-06-06
  • 使用Angular material主題定義自己的組件庫(kù)的配色體系

    使用Angular material主題定義自己的組件庫(kù)的配色體系

    這篇文章主要介紹了使用Angular material主題定義自己的組件庫(kù)的配色體系的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • ui-router中使用ocLazyLoad和resolve的具體方法

    ui-router中使用ocLazyLoad和resolve的具體方法

    這篇文章主要介紹了ui-router中使用ocLazyLoad和resolve的具體方法,詳細(xì)的介紹了ocLazyLoad和resolve的具體用法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-10-10
  • Angular如何在應(yīng)用初始化時(shí)運(yùn)行代碼詳解

    Angular如何在應(yīng)用初始化時(shí)運(yùn)行代碼詳解

    這篇文章主要給大家介紹了關(guān)于Angular如何在應(yīng)用初始化時(shí)運(yùn)行代碼的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-06-06
  • angularjs 中$apply,$digest,$watch詳解

    angularjs 中$apply,$digest,$watch詳解

    這篇文章主要介紹了angularjs 中$apply,$digest,$watch詳解的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • AngularJS用戶選擇器指令實(shí)例分析

    AngularJS用戶選擇器指令實(shí)例分析

    這篇文章主要介紹了AngularJS用戶選擇器指令,結(jié)合實(shí)例形式分析了angular指令實(shí)現(xiàn)選擇器功能的具體操作步驟與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2016-11-11

最新評(píng)論