ng-class angular 中的条件问题?

ng-class issue with condition in angular?

我有两个 link,它们分别在单击 link.first 时显示两个不同的图像,但当我再次单击选定的 link 时,图像显示正确但悬停正在搬到另一个 link。我的意思是它显示第二个 link 被选中。 这是我到目前为止所做的。

有人可以帮助我做错什么吗?

this.toogleClicktrue

loadingImg(folder) {
    this.toggleClick = !this.toggleClick;
    this.meta
      .getToken(
        "images",
        this.imgName.ReportJobId,
        (folder == "input" ?
          this.imgName.UniquePhotoName :
          this.imgName.UniquePhotoName
            .replace(".JPG", ".png")
            .replace(".jpg", ".png")),
        folder
      )
      .subscribe(data => {
        this.imgSrc = this.someurl(data);
      }, () => {
        this.imgSrc = "assets/images/image.jpg";
      });
  }

<ul class="result__image--tabslist">
            <li class="result__image--tab left left__tab" (click)="loadImg('output')">
                <span class="result__tab--txt" [ngClass]="toggleClick?'selected':''">
                    Scan
                </span>
            </li>
            <li class="result__image--tab left" (click)="loadImg('input')">
                <span class="result__tab--txt" [ngClass]="toggleClick?'':'selected'">
                    Original
                </span>
            </li>
</ul>

你可以试试

[class.selected]="toggleClick"

而不是

[ngClass]="toggleClick?'':'selected'"

这样 selected class 仅在 toggleClick 为真时应用。

你可以试试:

[class]="toggleClick?'selected':''"

或者,

[ngClass]="{'selected': toggleClick}"

或者,

[class.selected]="toggleClick"