我正在使用10页角的导航栏。这不应显示为 三种路线:
它只适用于一种情况,而不适用于所有三种情况:
<div
*ngIf="
router.url !== '/advocate-home/welcome' ||
router.url !== '/advocate-home/client-login' ||
router.url !== '/advocate-home/reset-password'
"
>
<nav bar>
</div>
此代码隐藏了该路线的导航栏,但我需要隐藏3条路线:
<div
*ngIf="
router.url !== '/advocate-home/welcome'
"
>
<nav bar RENDERED>
</div>
答案 0 :(得分:0)
您应该使用&&
,而不是||
:
<div
*ngIf="
router.url !== '/advocate-home/welcome'
&& router.url !== '/advocate-home/client-login'
&& router.url !== '/advocate-home/reset-password'
"
>
此逻辑运算符||
的意思是OR
,但是&&
的意思是AND
。
逻辑与(
&&
)expr1 && expr2
。如果expr1
可以转换为true
, 返回expr2
;否则,返回expr1
。逻辑或(
||
)expr1 || expr2
。如果expr1
可以转换为true
,返回expr1
;否则,返回expr2
。
let x = 3;
let y = -1;
console.log(x > 0 && y > 0);
// expected output: false
console.log(x > 0 || y > 0);
// expected output: true
console.log(!(x > 0 || y > 0));
// expected output: false
答案 1 :(得分:0)
如果布尔运算符使您感到困惑,则可以考虑使用数组:
*ngIf="!['/advocate-home/welcome', '/advocate-home/client-login', '/advocate-home/reset-password'].includes(router.url)"