簡體   English   中英

子指令訪問每個父指令

[英]child directive access every parent directive

我正在嘗試在angularJS中做一個slider 我有一個帶有事件偵聽器的子指令。 當偵聽主事件( mousedown )時,它將從父指令(通過控制器)調用一個函數,並更改各種html元素的樣式。 當頁面上只有一個指令時,它就像一個超級按鈕。 如果有多個,則調用每個父控制器。 我不明白為什么。

Plknr: http ://plnkr.co/edit/9vGXxjDbqqEOzLcXRkoW?p = preview

父指令:

return {
        restrict: 'EA',
        scope: {
            sliderStep: '@',
            sliderBothHandles: '@',
            sliderMinVal: '=', //value min handle
            sliderMaxVal: '=', //value max handle
            sliderMin: '@', //minimum value authorized
            sliderMax: '@' //maximum value authorized
        },
        templateUrl: 'slider_template',
        controller: sliderController,
        transclude: true

};

子指令:

return {
        restrict: 'EA',
        link: link,
        require: '^mcsSlider',
        scope: true
};

標記:

<mcs-slider slider-step="1" slider-max-val="formCtrl.value1" slider-min="0" slider-max="7200">
   <div mcs-slider-handle class="slider-handle max-slider-handle round" aria-valuemin="0" aria-valuemax="7200" aria-valuenow="{{formCtrl.value1}}" tabindex="0" style="left:0%;"></div>
</mcs-slider>

問題似乎在$interval函數的mcsSliderHandle指令內部。 您正在使用$('.min-slider-handle')來查找該類的所有元素! 您只需要檢索當前指令內的元素。 錯了,但是在這里打工

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM