view-all.component.html 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <ion-header class="ion-no-border">
  2. <ion-toolbar>
  3. <ion-buttons slot="start">
  4. <ion-back-button defaultHref="/tabs/tab1" text=""></ion-back-button>
  5. </ion-buttons>
  6. <ion-title>最近在学</ion-title>
  7. </ion-toolbar>
  8. </ion-header>
  9. <ion-content>
  10. <div class="books-container">
  11. @for(book of recentBooks; track book.id) {
  12. <div class="book-card" (click)="goToBookDetail(book.id)">
  13. <div class="book-image">
  14. <img [src]="book.image" [alt]="book.title">
  15. <div class="progress-overlay">
  16. <div class="progress-bar">
  17. <div class="progress-fill" [style.width]="formatProgress(book.progress)"></div>
  18. </div>
  19. <span class="progress-text">{{formatProgress(book.progress)}}</span>
  20. </div>
  21. </div>
  22. <div class="book-info">
  23. <h2>{{book.title}}</h2>
  24. <p class="author">作者:{{book.author}}</p>
  25. <p class="description">{{book.description}}</p>
  26. <div class="book-meta">
  27. <span class="last-read">
  28. <ion-icon name="time-outline"></ion-icon>
  29. 最近阅读:{{book.lastRead}}
  30. </span>
  31. <ion-button fill="clear" size="small">
  32. <ion-icon name="play-circle-outline" slot="start"></ion-icon>
  33. 继续学习
  34. </ion-button>
  35. </div>
  36. </div>
  37. </div>
  38. }
  39. </div>
  40. </ion-content>