[英]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.