character.page.html 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <ion-header>
  2. <ion-toolbar>
  3. <ion-buttons slot="start">
  4. <ion-back-button defaultHref="/tabs/character"></ion-back-button>
  5. </ion-buttons>
  6. <ion-title>角色管理</ion-title>
  7. </ion-toolbar>
  8. </ion-header>
  9. <ion-content>
  10. <!-- 空状态显示 -->
  11. <div class="empty-state" *ngIf="characters.length === 0">
  12. <ion-icon name="people-outline" class="empty-icon"></ion-icon>
  13. <h2>暂无角色</h2>
  14. <p>点击下方按钮创建新角色</p>
  15. <ion-button
  16. expand="block"
  17. style="--background: #ff69b4"
  18. (click)="createNewCharacter()">
  19. 创建角色
  20. </ion-button>
  21. </div>
  22. <!-- 角色列表 -->
  23. <ion-grid *ngIf="characters.length > 0">
  24. <ion-row>
  25. <ion-col size="6" size-md="4" size-lg="3" *ngFor="let character of characters">
  26. <ion-card class="character-card" (click)="navigateToDetail(character.id)">
  27. <img [src]="character.avatar" [alt]="character.name">
  28. <ion-card-header>
  29. <ion-card-title>{{ character.name }}</ion-card-title>
  30. </ion-card-header>
  31. </ion-card>
  32. </ion-col>
  33. </ion-row>
  34. </ion-grid>
  35. <!-- 底部创建按钮 -->
  36. <div class="bottom-button" *ngIf="characters.length > 0">
  37. <ion-button
  38. expand="block"
  39. style="--background: #ff69b4"
  40. (click)="createNewCharacter()"
  41. class="create-button">
  42. 创建角色
  43. </ion-button>
  44. </div>
  45. </ion-content>