簡體   English   中英

ng-click in指令不起作用

[英]ng-click in the directive doesn't work

我想在單擊復選框時執行一個功能,但是什么也沒有發生。

當我將sendMediaToScreen函數放在鏈接( scope.sendMediaToScreen() )中時,該函數可以正常工作,因此可以使用scope

.directive('uxEmbedVideo', ['$compile','myURL', function( $compile, myURL ) {
    return {
        restrict: "E",
        replace: true,
        scope: {
            'clientId': '@',
            'sendMediaToScreen': '&',
            'rule': '=',
            'screenActivated' : '='
        },
        link: function( scope, element, attrs ){
        },
        templateUrl: myURL.getAppViewsPath() + '/partials/embed-video.html'
    };
}])

指示

<ux-embed-video
    rule="user.rules"
    screen-activated="room.parameters.screenActivated"
    send-media-to-screen="roomManager.sendMediaToScreen({ clientId : user.clientId, from: 'producer' })">
</ux-embed-video>

/partials/embed-video.html

<div class="ux-video-admin-controls" ng-if="rule === 'administrator'" >
    <input ng-if="screenActivated"
       restrict access="administrator"
       class="ux-admin-videoToScreen"
       type="checkbox"
       ng-click="sendMediaToScreen()"
       />
</div>

問題出在<ux-embed-video>指令的使用范圍之內。

您將roomManager.sendMediaToScreen({ clientId : user.clientId, from: 'producer' })的結果綁定到scope.send-media-to-screen而不是傳入回調。

我不知道為什么,但是像這樣替換模板指令,現在可以了

在指令中:

刪除->替換:true,

在模板中

<div class="ux-video-admin-controls" ng-if="rule === 'administrator' && screenActivated" >
    <input
       restrict access="administrator"
       class="ux-admin-videoToScreen"
       type="checkbox"
       ng-click="sendMediaToScreen()"
       />
</div>

謝謝

暫無
暫無

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

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