我正在尝试编写将评估用户权限的指令。
如果不允许用户查看给定的内容
内容不会显示(完成,工作正常)
来自权限指令内的控制器的请求不会被触发。
例子:
控制器:
function MyController ($scope){
// performing imediately server request, witch is allowed only for admin
// therefore i will get error when non admin user access this page
}
许可指令:
return {
priority: 1000,
restrict: 'E',
link: (scope, element, attrs) => {
var permission = attrs.permission;
if (/*evaluating permission*/) {
// user has permission, no work for me
return;
}
element.remove();
}
};
全部一起:
<permission permission="isAdmin">
<div ng-controller="MyController">
</div>
</permission>
此版本正在从 DOM 中删除元素,但 MyController 中的请求仍会执行。当然,我可以在 MyController 中检查权限,但我不想这样做。
感谢您的帮助。