在Angular中,是否可以在模板中使用TypeScript的Enum Flags?
我被"&"拒绝了?按位运算符。
我怀疑它不可能,只是仔细检查。
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
更新 每个人评论使用&#34;&amp;&amp;&#34;而不是&#34;&amp;&#34;,请阅读this document first 我完全清楚两者之间的区别。
答案 0 :(得分:1)
在模板中正确使用AND是逻辑运算符双符号&&
。 Bitwise不能直接在模板中使用。
*ngIf="(userDetailsFlags$ | async) && flags.Loaded"
应该可以解决问题,但如果你想按位应用,你可以在你的组件打字稿中这样做。
此处直接说明按位的文档在模板中不可用:https://angular.io/guide/template-syntax#template-expressions