En Angulaire est-il possible d'utiliser les drapeaux Enum de TypeScript dans le gabarit?
Je reçois un rejet avec l'opérateur de bit "&".
Je suppose que ce n'est pas possible, juste une double vérification.Utilisation de drapeaux TS Enum dans le gabarit Angular 2+
export enum Flags {
Virgin = 0,
Loading = 1 << 0,
Loaded = 1 << 1,
Hidden = 1 << 2,
}
// component.ts
public flags = Flags;
// component.html
*ngIf="(userDetailsFlags$ | async) & flags.Loaded"
// Error:
Parser Error: Unexpected token &, expected identifier, keyword, or string at
Mise à jour: Pour tous commentaires sur l'utilisation de "& &" au lieu de "&", s'il vous plaît lire this document first.
Je connais très bien la différence entre les deux.
Etes-vous sûr que vous ne devriez pas utiliser '' && à la place? –
Dans '* ngIf' d'Angular, vous devriez lui passer une valeur' boolean'. Vous ne pouvez donc pas appliquer une opération au niveau du bit dans cette expression. Je pense que le moteur de template ne peut pas reconnaître la syntaxe '&'. –
La confusion semble provenir d'une tentative d'utilisation d'une expression au niveau du bit dans quelque chose qui attend une expression logique. '&' n'est pas accepté dans le modèle comme je l'ai mentionné, mais vous pouvez créer une méthode de type dièse pour utiliser l'opérateur au niveau du bit et retourner un booléen. –