【问题标题】:Ionic: Icon doesn't switch back when using *ngIfIonic:使用 *ngIf 时图标不会切换回来
【发布时间】:2019-03-25 14:37:00
【问题描述】:

所以我在 Ionic 中有以下按钮:

HTML

<button ion-button (click)="play()">
   <ion-icon *ngIf="!isPlaying" name="play"></ion-icon>
   <ion-icon *ngIf="isPlaying" name="stop"></ion-icon>
</button>

组件

play() {
  this.isPlaying = true;
  this.nativeAudio.play('audioId', () => {
    this.isPlaying = false;
  });
}

现在,当我单击按钮时,图标切换到停止,表示播放已开始。但是,即使我将isPlaying 设置为false,播放后按钮仍会显示stop 图标。

现在在我看来有不同的按钮,我注意到当我按下其他按钮之一时,图标现在切换到 play 图标。在 UI 上有另一个活动之前,UI 似乎不会刷新。当我尝试使用 *ngIf 切换显示的图像时也会发生这种情况。

提前致谢!

【问题讨论】:

  • 你能在你切换isPlaying的地方添加一段代码吗?否则很难重现您的问题。也许您甚至可以创建一个 stackblitz 来证明您的问题
  • 添加了上面的组件代码。

标签: ionic-framework ionic3


【解决方案1】:

像这样试试。

play(){
   this.isPlaying = ! this.isPLaying;
}

在您的html 文件中

<button ion-button (click)="play()">
   <ion-icon [name]="!isPlaying? 'play':'stop'"></ion-icon>
</button>

希望这会有所帮助。

【讨论】:

  • 如果我在按钮内切换ion-iconimg 标签怎么样?应该怎么看?
  • 你能在你的问题中更新一下吗?这样我就能得到一个清晰的画面
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-21
  • 1970-01-01
  • 2011-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多