tab3.page.html 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <ion-header [translucent]="true">
  2. <ion-toolbar class="custom-toolbar">
  3. <ion-title class="custom-title">
  4. 健康商城
  5. </ion-title>
  6. </ion-toolbar>
  7. </ion-header>
  8. <ion-content [fullscreen]="true" class="content-background">
  9. <!-- 搜索栏 -->
  10. <div class="search-container">
  11. <ion-searchbar placeholder="搜索" class="custom-searchbar"></ion-searchbar>
  12. </div>
  13. <!-- 分类区域(可横向滑动) -->
  14. <div class="category-scroll">
  15. <div class="category-scroll-inner">
  16. <ion-grid>
  17. <ion-row class="category-row">
  18. <ion-col size="3" *ngFor="let category of categories" class="category-col">
  19. <div class="category-item">
  20. <div class="category-image-wrapper">
  21. <img [src]="category.image" alt="{{category.name}}" class="category-image">
  22. </div>
  23. <div class="category-text">{{ category.name }}</div>
  24. </div>
  25. </ion-col>
  26. </ion-row>
  27. </ion-grid>
  28. </div>
  29. </div>
  30. <!-- 商品卡片列表区域 -->
  31. <div class="product-container">
  32. <ng-container *ngFor="let product of products">
  33. <ion-card class="product-card" (click)="openDetailModal(product)">
  34. <ion-card-header class="product-card-header">
  35. <div class="product-tag">{{product.title}}</div>
  36. </ion-card-header>
  37. <ion-card-content class="product-card-content">
  38. <div class="product-image-wrapper">
  39. <img [src]="product.image" alt="{{product.name}}" class="product-image">
  40. </div>
  41. <div class="product-info">
  42. <h3 class="product-name">{{product.name}}</h3>
  43. <div class="product-price">{{product.price}}</div>
  44. </div>
  45. </ion-card-content>
  46. </ion-card>
  47. </ng-container>
  48. </div>
  49. <!-- 底部弹出模态 -->
  50. <ion-modal [isOpen]="showDetailModal" cssClass="bottom-modal" backdropDismiss="true" (ionModalDidDismiss)="closeDetailModal()">
  51. <ion-header>
  52. <ion-toolbar>
  53. <ion-title>详情</ion-title>
  54. <ion-buttons slot="end">
  55. <ion-button fill="clear" (click)="closeDetailModal()">
  56. <ion-icon name="close"></ion-icon>
  57. </ion-button>
  58. </ion-buttons>
  59. </ion-toolbar>
  60. </ion-header>
  61. <ion-content>
  62. <div class="modal-content" *ngIf="currentProduct">
  63. <div class="image-container">
  64. <img [src]="currentProduct.image" alt="药品图片" class="medicine-image">
  65. </div>
  66. <h2 class="product-name">{{currentProduct.name}}</h2>
  67. <p><strong>价格:</strong>{{currentProduct.price}}</p>
  68. <p><strong>是否处方药:</strong>{{currentProduct.prescription ? '是' : '否'}}</p>
  69. <p><strong>用法用量:</strong>{{currentProduct.usage}}</p>
  70. <p><strong>主治功能:</strong>{{currentProduct.function}}</p>
  71. <p><strong>规格:</strong>{{currentProduct.spec}}</p>
  72. <p><strong>成分:</strong>{{currentProduct.composition}}</p>
  73. <p><strong>禁忌:</strong>{{currentProduct.taboo}}</p>
  74. </div>
  75. </ion-content>
  76. </ion-modal>
  77. </ion-content>