Je veux mettre en œuvre quelque chose de similaire avec angular-permisssion . Et pour contrôler l'existence de l'élément, j'ai besoin d'utiliser angular. directive structurelle .
Au début, je pense qu'une telle syntaxe fonctionnerait :
<h2 *permissionIf [permissionIfExcept]="'Read'">Except</h2>
Cependant, cela ne fonctionne pas de cette façon.
De plus, le guide officiel ne vous apprend qu'à écrire une directive structurelle personnalisée avec une seule entrée. Avec des entrées multiples, certains tutoriels tiers impliquent un peu. Mais il s'agit d'utiliser la micro-syntaxe des modèles angulaires pour réaliser la liaison des données. Un problème survient alors : la syntaxe template ne supporte pas les entrées de type clé-valeur :
<h2 *permissionIf="except: map.exceptonly: 'test'">Except</h2>
Il s'étend à cela (ce qui est illégal) :
<h2 template="permissionIf except: map.exceptonly: 'test'">Except</h2>
Une solution temporaire stupide consiste à ajouter une déclaration de variable inutile.
<h2 *permissionIf="let i;except: map.exceptonly: 'test'">Except</h2>
Un autre moyen peu pratique consiste à utiliser un élément de modèle pour envelopper le code.
<template permissionIf [permissionIfExcept]="'Read'">
<h2>Except</h2>
</template>
Tout ce qui précède n'est pas suffisamment acceptable. Mais je ne peux pas trouver une meilleure façon de résoudre le problème.
J'espère que certains pourront me donner des conseils :).