tab3.page.html 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. <ion-header [translucent]="true" class="ion-no-border">
  2. <ion-toolbar>
  3. <div class="header-container">
  4. <!-- 菜单按钮,只有在搜索未激活时显示 -->
  5. <ion-menu-button *ngIf="!isSearchActive" class="menu-icon"></ion-menu-button>
  6. <!-- 导航项,只有在搜索未激活时显示 -->
  7. <div *ngIf="!isSearchActive" class="nav-links">
  8. <span class="nav-item" (click)="red_underline('关注')" data-id="关注">关注</span>
  9. <span class="nav-item" (click)="red_underline('发现')" data-id="发现">发现</span>
  10. <span class="nav-item" (click)="red_underline('附近')" data-id="附近">附近</span>
  11. </div>
  12. <!-- 搜索图标,点击时切换搜索框 -->
  13. <div>
  14. <ion-icon name="search-outline" class="search-icon" (click)="onSearchIconClick()"></ion-icon>
  15. </div>
  16. <!-- 搜索框,只有在搜索激活时显示 -->
  17. <!-- 搜索框 -->
  18. <div class="search-bar-container" *ngIf="isSearchActive">
  19. <ion-searchbar [(ngModel)]="searchQuery" debounce="300" (ionInput)="onSearchInput()" placeholder="搜索描述..."
  20. class="custom-searchbar" [showCancelButton]="false" showClearButton="never"></ion-searchbar>
  21. <button class="close-btn" (click)="onCloseSearch()">返回</button>
  22. </div>
  23. </div>
  24. </ion-toolbar>
  25. </ion-header>
  26. <ion-content [fullscreen]="true">
  27. <!-- 分类导航 -->
  28. <div class="category-nav">
  29. <ion-toolbar>
  30. <ion-tabs>
  31. <ion-tab-bar slot="top">
  32. <ion-tab-button tab="home">
  33. <ion-icon name="home-outline" slot="start"></ion-icon>
  34. <ion-label>推荐</ion-label>
  35. </ion-tab-button>
  36. <ion-tab-button tab="psychology">
  37. <ion-icon name="film-outline" slot="start"></ion-icon>
  38. <ion-label>视频</ion-label>
  39. </ion-tab-button>
  40. <ion-tab-button tab="course">
  41. <ion-icon name="brush-outline" slot="start"></ion-icon>
  42. <ion-label>绘画</ion-label>
  43. </ion-tab-button>
  44. <ion-tab-button tab="test">
  45. <ion-icon name="shirt-outline" slot="start"></ion-icon>
  46. <ion-label>穿搭</ion-label>
  47. </ion-tab-button>
  48. <ion-tab-button tab="ebook">
  49. <ion-icon name="dance-outline" slot="start"></ion-icon>
  50. <ion-label>舞蹈</ion-label>
  51. </ion-tab-button>
  52. </ion-tab-bar>
  53. </ion-tabs>
  54. </ion-toolbar>
  55. </div>
  56. <!-- 内容网格 -->
  57. <div class="content-grid">
  58. <div class="content-card" (click)="goToDetail(artwork.WorkId)" style="cursor: pointer;"
  59. *ngFor="let artwork of displayedArtworks;trackBy: trackByFn">
  60. <img [src]="artwork.fileUrl" [alt]="artwork.title" class="card-image">
  61. <div class="card-content">
  62. <div class="title">{{artwork.title}}</div>
  63. <div class="description">{{artwork.description}}</div>
  64. <div class="user-info">
  65. <div class="user">
  66. <img [src]="artwork.avatarUrl" [alt]="artwork.userName" class="avatar">
  67. <div class="info">
  68. <span class="name" style="font-size: 12px;">{{artwork.userName}}</span>
  69. <span class="date">{{artwork.updatedAt| date:'MM-dd'}}</span>
  70. </div>
  71. </div>
  72. <div class="likes">
  73. <ion-icon name="heart-outline"></ion-icon>
  74. <span>{{artwork.likesCount}}</span>
  75. </div>
  76. </div>
  77. </div>
  78. </div>
  79. </div>
  80. </ion-content>
  81. <!-- 添加侧边菜单 -->
  82. <ion-menu contentId="main-content" side="start">
  83. <ion-content class="menu-content">
  84. <div class="menu-header">
  85. <h2>个人中心</h2>
  86. </div>
  87. <ion-list lines="none">
  88. <ion-item button detail>
  89. <ion-icon name="create-outline" slot="start"></ion-icon>
  90. <ion-label>创作中心</ion-label>
  91. </ion-item>
  92. <ion-item button detail>
  93. <ion-icon name="document-outline" slot="start"></ion-icon>
  94. <ion-label>我的草稿</ion-label>
  95. </ion-item>
  96. <ion-item button detail>
  97. <ion-icon name="chatbubble-outline" slot="start"></ion-icon>
  98. <ion-label>我的评论</ion-label>
  99. </ion-item>
  100. <ion-item button detail>
  101. <ion-icon name="heart-outline" slot="start"></ion-icon>
  102. <ion-label>我的收藏</ion-label>
  103. </ion-item>
  104. <ion-item button detail>
  105. <ion-icon name="time-outline" slot="start"></ion-icon>
  106. <ion-label>浏览记录</ion-label>
  107. </ion-item>
  108. </ion-list>
  109. </ion-content>
  110. </ion-menu>
  111. <!-- 主内容区域添加 id -->
  112. <div class="ion-page" id="main-content">
  113. <!-- 其他内容持不变 -->
  114. </div>