Я хочу реализовать нечто подобное с угловым разрешением. И с требованием контролировать элементное существование, мне нужно использовать угловую структурную директиву.
В начале я думаю, что такой синтаксис будет работать:
<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>
Выше всего недостаточно. Но я не могу найти способ его решения.
Надеюсь, что некоторые парни могут дать какое-то предложение :).