tab1.page.html 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <ion-header>
  2. <ion-toolbar>
  3. <ion-buttons slot="start">
  4. <ion-menu-button></ion-menu-button>
  5. <ion-avatar>
  6. <img src="./assets/img/logo.jpg">
  7. </ion-avatar>
  8. </ion-buttons>
  9. <div class="centered-title">
  10. 乐游南昌
  11. </div>
  12. <ion-buttons slot="end">
  13. </ion-buttons>
  14. </ion-toolbar>
  15. </ion-header>
  16. <style>
  17. .centered-title {
  18. position: absolute;
  19. top: 50%;
  20. left: 50%;
  21. transform: translate(-50%, -50%);
  22. font-family: '宋体', sans-serif;
  23. font-size: 24px;
  24. font-weight: bold;
  25. color: black;
  26. }
  27. ion-toolbar {
  28. padding: 0; /* 移除默认的内边距 */
  29. }
  30. </style>
  31. <ion-content>
  32. <ion-searchbar
  33. placeholder="输入目的地或景点"
  34. showCancelButton="focus"
  35. (ionInput)="onSearch($event)">
  36. </ion-searchbar>
  37. <ion-card>
  38. <ion-card-header>
  39. <ion-card-title>推荐路线</ion-card-title>
  40. </ion-card-header>
  41. <ion-card-content>
  42. <ion-list>
  43. <ion-item *ngFor="let route of recommendedRoutes">
  44. <ion-thumbnail slot="start">
  45. <img [src]="route.thumbnail" />
  46. </ion-thumbnail>
  47. <ion-label>
  48. <h2>{{ route.title }}</h2>
  49. <p>{{ route.description }}</p>
  50. </ion-label>
  51. <ion-button slot="end" fill="outline" >去这里!</ion-button>
  52. </ion-item>
  53. </ion-list>
  54. </ion-card-content>
  55. </ion-card>
  56. <ion-card>
  57. <ion-card-header>
  58. <ion-card-title>个性化推荐</ion-card-title>
  59. </ion-card-header>
  60. <ion-card-content>
  61. <ion-list>
  62. <ion-item *ngFor="let personalizedRoute of personalizedRoutes" (click)="viewRoute(personalizedRoute)">
  63. <ion-label>
  64. <h2>{{ personalizedRoute.title }}</h2>
  65. <p>{{ personalizedRoute.reason }}</p>
  66. </ion-label>
  67. <ion-button slot="end" fill="outline">立即查看</ion-button>
  68. </ion-item>
  69. </ion-list>
  70. </ion-card-content>
  71. </ion-card>
  72. <ion-card>
  73. <ion-card-header>
  74. <ion-card-title>热门景点</ion-card-title>
  75. </ion-card-header>
  76. <ion-card-content>
  77. <ion-list>
  78. <ion-item *ngFor="let attraction of popularAttractions" (click)="viewAttraction(attraction)">
  79. <ion-thumbnail slot="start">
  80. <img [src]="attraction.image" />
  81. </ion-thumbnail>
  82. <ion-label>
  83. <h2>{{ attraction.name }}</h2>
  84. <p>{{ attraction.description }}</p>
  85. </ion-label>
  86. <ion-button slot="end" fill="outline">查看详情</ion-button>
  87. </ion-item>
  88. </ion-list>
  89. </ion-card-content>
  90. </ion-card>
  91. <ion-card>
  92. <ion-card-header>
  93. <ion-card-title>用户反馈</ion-card-title>
  94. </ion-card-header>
  95. <ion-card-content>
  96. <ion-list>
  97. <ion-item *ngFor="let feedback of userFeedbacks">
  98. <ion-avatar slot="start">
  99. <img [src]="feedback.userAvatar" />
  100. </ion-avatar>
  101. <ion-label>
  102. <h2>{{ feedback.username }}</h2>
  103. <p>{{ feedback.content }}</p>
  104. <div>
  105. <ion-icon *ngFor="let star of [].constructor(5); let i = index"
  106. [name]="i < feedback.rating ? 'star' : 'star-outline'">
  107. </ion-icon>
  108. </div>
  109. </ion-label>
  110. </ion-item>
  111. </ion-list>
  112. </ion-card-content>
  113. </ion-card>
  114. </ion-content>