javascript - 如何在 Angular 语法中应用多个 ngIf 条件?

标签 javascript html angular typescript

我需要在 ngIf 语句中设置多个条件。

我已经为多个用户创建了模板,但有些内容我不想让特定用户看到,例如 super 管理员、管理员、部门用户、部门用户和单位领导。

enum of users: ['s','a','d','u','c']

1> Super Admin -> s
2> Admin -> a
3> Division Supervisor -> d
4> Unit Leader -> u
5> Section Chief -> c

例如,我想为特定的用户登录显示下面的按钮我尝试了下面的代码,但对两个用户都很好,但是

<button *ngIf="menuUserType === 'a' || menuUserType !== 's' " class="btn-style red-btn" routerLink="/division/add-edit-division/0"><span class="material-icons">add</span>Add Division</button>

但是当我尝试申请更多用户时,它不起作用并且出现错误。

<button *ngIf="menuUserType === 'a' || menuUserType === 'c' || menuUserType !== 's' || menuUserType !== 'd'  " class="btn-style red-btn" routerLink="/division/add-edit-division/0"><span class="material-icons">add</span>Add Division</button>

错误

enter image description here

那么有什么解决办法吗?

最佳答案

你的第二个 if 是错误的,因为字母 A 和 C 与字母 S 不同。你正在做的另一件事是如果变量不同于 S 并且同时不同于 D,那么 Angular 将向你展示一个错误,它将始终为真,因为您使用的任何字母都将为真。你需要的只是这个:

<button *ngIf="menuUserType !== 's' && menuUserType !== 'd'" class="btn-style red-btn" routerLink="/division/add-edit-division/0"><span class="material-icons">add</span>Add Division</button>

关于javascript - 如何在 Angular 语法中应用多个 ngIf 条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67619542/

相关文章:

javascript - 将 $(this) 与多个选择器一起使用,您可以引用一个而不是另一个吗?

javascript - 样式 &lt;input type ="range"> 用于重定向不适用于触摸设备

json - 如何将 JSON 数据从 Node 发送到 Angular 4

android - build.gradle 在 ionic cordova 构建后恢复到旧配置

angular - 如何在不使用 declare var 的情况下使用 Angular-CLI 将通过 CDN 交付的第三方库导入 Angular/Typescript?

javascript - 将 Google map 中的坐标和数据保存到数据库中

javascript - 如何让参数在事件函数中工作

javascript - 在 JQVmap 中使用自定义区域

html - CSS 按钮具有无法移除的白色边距/填充

javascript - 替换 contenteditable div 的 html 后,如何将插入符号放在以前的位置?