space.component.html 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. <ion-header [translucent]="true" class="header">
  2. <div class="top">
  3. <!-- <div class="more"></div> -->
  4. <ion-segment
  5. [scrollable]="true"
  6. (ionChange)="segmentChanged($event)"
  7. layout="icon-bottom"
  8. value="all"
  9. mode="md"
  10. >
  11. <ion-segment-button value="all" class="tabs" content-id="all">
  12. <ion-label>全部</ion-label>
  13. </ion-segment-button>
  14. <ion-segment-button value="self" class="tabs" content-id="self">
  15. <ion-label>我发布的</ion-label>
  16. </ion-segment-button>
  17. </ion-segment>
  18. <div class="more">
  19. <ion-button id="post-trigger"
  20. ><ion-icon name="add-outline"></ion-icon
  21. ></ion-button>
  22. </div>
  23. </div>
  24. </ion-header>
  25. <ion-content class="content">
  26. <ion-popover
  27. trigger="post-trigger"
  28. [dismissOnSelect]="true"
  29. triggerAction="click"
  30. >
  31. <ng-template>
  32. <ion-list>
  33. <ion-item
  34. class="post"
  35. (click)="toUrl('user/release')"
  36. [button]="true"
  37. [detail]="false"
  38. ><ion-icon name="share-outline"></ion-icon>发布帖子</ion-item
  39. >
  40. </ion-list>
  41. </ng-template>
  42. </ion-popover>
  43. <div class="tab-content">
  44. @for (item of list; track $index) {
  45. <div class="card">
  46. <div class="user-data">
  47. <div
  48. (click)="toUrl('user/profile/' + item.uid)"
  49. class="pendant"
  50. [style.background-image]="
  51. 'url(https://file-cloud.fmode.cn/Qje9D4bqol/20241109/vv1tvb032259054.png)'
  52. "
  53. >
  54. <img [src]="item.avatar" class="avatar" alt="" />
  55. </div>
  56. <div class="user-dateil">
  57. <div class="dateil">
  58. <div class="user-name">{{ item.nickname }}</div>
  59. @if (item.isVip) {
  60. <img src="img/VIP.png" alt="" />
  61. } @if (item.identyType == 'anchor') {
  62. <div class="tag">主播</div>
  63. }
  64. </div>
  65. <div class="time">{{ item.formatted_date }}</div>
  66. </div>
  67. </div>
  68. <div class="post-dateil">
  69. <div class="text-content">{{ item.content }}</div>
  70. <div class="imgs">
  71. @for (img of item.images; track $index) {
  72. <img [src]="img" alt="" (click)="onShowImg(img)" />
  73. }
  74. </div>
  75. </div>
  76. <div class="tool">
  77. <div
  78. [ngClass]="{
  79. 'action-icon': item.isPostLog,
  80. 'tool-item': true
  81. }"
  82. (click)="onPostLog(item, $index)"
  83. >
  84. <ion-icon name="heart-circle"></ion-icon>
  85. {{ item.postCount }}
  86. </div>
  87. @if (item.uid == user.id) {
  88. <div class="tool-item" style="color: #1a65eb;" (click)="delPost(item.objectId,$index)">
  89. <ion-icon name="remove-circle"></ion-icon>
  90. </div>
  91. }@else {
  92. <div class="tool-item" (click)="onReport()">
  93. <ion-icon name="warning"></ion-icon>
  94. </div>
  95. }
  96. </div>
  97. </div>
  98. }
  99. <ion-infinite-scroll (ionInfinite)="onIonInfinite($event)">
  100. <ion-infinite-scroll-content></ion-infinite-scroll-content>
  101. </ion-infinite-scroll>
  102. </div>
  103. </ion-content>
  104. <app-image-preview [image]="currenImg" #preview></app-image-preview>