Angularでは、テンプレート内でTypeScriptのEnum Flagsを使用できますか?
"&"のビット演算子で拒否されています。
私はそれが可能ではないと思う、ちょうど二重チェック。TS Enumフラグを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
更新: 代わりに "&" の "& &" を使用してについてコメント皆に、this document firstをお読みください。
私は両者の違いを十分に知っています。
あなたがあなたの代わりに '' &&使用すべきではありませんか? –
Angularの '* ngIf'では、その中に' boolean'値を渡す必要があります。したがって、この式でビット単位の演算を適用することはできません。私は、テンプレートエンジンが '&'構文を認識できないと思います。 –
混乱は、論理式を期待するものでビット単位の表現を使用しようとしているように思われる。私が言及したように、 '&'はテンプレートでは受け入れられませんが、ビットワイズ演算子を使用してブール値を返すために、typescriptメソッドを作成することができます。 –