【发布时间】:2017-06-06 23:31:28
【问题描述】:
我想用angular-permisssion 实现类似的东西。并且需要控制元素的存在,我需要使用角度structural directive。
一开始,我认为这样的语法会起作用:
<h2 *permissionIf [permissionIfExcept]="'Read'">Except</h2>
但是,它不会那样工作。
此外,官方指南仅教您如何使用单个输入编写自定义结构指令。 对于多输入,一些第三方教程涉及到一点。但那是使用角度模板微语法来实现数据绑定。然后出现一个问题: 模板语法不支持纯键值输入:
<h2 *permissionIf="except: map.except;only: 'test'">Except</h2>
它扩展成这个(这是非法的):
<h2 template="permissionIf except: map.except;only: 'test'">Except</h2>
一个愚蠢的临时解决方案是添加一个无用的变量声明。
<h2 *permissionIf="let i;except: map.except;only: 'test'">Except</h2>
另一种不方便的方法是使用模板元素来包装代码。
<template permissionIf [permissionIfExcept]="'Read'">
<h2>Except</h2>
</template>
以上都不够接受。但我找不到更好的方法来解决它。
希望各位大侠给点建议:)。
【问题讨论】:
标签: javascript angular directive