为什么 *NgIf 不能使用布尔值来处理 Angular 9

Ale*_*eze 5 angular-ng-if angular angular9

我正在尝试在布尔值上使用 ngif 显示元素,如下所示:

<li *ngIf="!include == true">
    <span class="badge badge-pill badge-danger">
        <i [ngClass]="hearthClass"></i>
    </span>
</li>
Run Code Online (Sandbox Code Playgroud)

我的 include var il 初始化为 false 并像这样切换状态:

this.localStorageService.getCurrentUser().then((res) => {
      this.userProfile = res;
       if(this.song.likes.includes(this.userProfile._id)){
         this.include = true
       }
      this.classHeart();
    });
Run Code Online (Sandbox Code Playgroud)

谢谢大家 !

Sur*_*yan 1

!运算符先起作用,然后 起作用==,因此当您设置为 时includetrue结果ngIffalse

写吧

<li *ngIf="include">
    <span class="badge badge-pill badge-danger">
        <i [ngClass]="hearthClass"></i>
    </span>
</li>
Run Code Online (Sandbox Code Playgroud)