我想编写一个指令,根据我提供的角色(字符串值)来显示/隐藏元素。
我有以下指令:
(function() {
'use strict';
angular
.module('fuse')
.directive('showWhenRole', showWhenRoleDirective);
/** @ngInject */
function showWhenRoleDirective(auth) {
return {
restrict: 'A',
scope: {
showWhenRole: '@'
},
compile: function(scope, tElement) {
console.log("showWhenRoleDirective",scope.showWhenRole);
// if (auth.isAdmin()) {
// tElement.show();
// } else {
// tElement.hide();
// }
}
};
}
})();
我的HTML元素如下所示:
<md-menu-bar id="user-menu" show-when-role="admin">
当我查看控制台时,消息是:
showWhenRoleDirective undefined
我做错了什么?
答案 0 :(得分:1)
从compile
移至link
,scope
阶段无法使用compile