researchAuthor.vue 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. <template>
  2. <view class="container theme-hot-content">
  3. <view class="tab-bar-ul">
  4. <view class="item-content">
  5. <view @click="tabBarSwitchHandel(item)" :class="['item', tabBarActive === item.value && 'item-act']" v-for="item in tabBarList" :key="item.value">{{ item.name }}</view>
  6. </view>
  7. </view>
  8. <view class="content-ul">
  9. <view class="kol-li" v-for="item in dataList" :key="item.DepartmentId">
  10. <image @click="authorDetails(item)" :src="item.ImgUrl" v-if="item.ImgUrl"></image>
  11. <view class="li-item kol-item">
  12. <view class="item-top">
  13. <view class="hot-item" @click="authorDetails(item)">
  14. {{ item.NickName }}
  15. <image class="hot-icon" v-if="item.IsHot" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/hot_report.png" mode=""></image>
  16. </view>
  17. <text :class="item.IsFollw ? 'cancel-attention' : 'attention'" @click="isAttention(item, '专家')">{{ item.IsFollw ? "取消关注" : "+ 关注" }}</text>
  18. </view>
  19. <text @click="themeDetails(val, 'KOL榜')" class="kol-text text_oneLine" v-for="val in item.List" :key="val.IndustrialManagementId"> # {{ val.IndustryName }} </text>
  20. </view>
  21. </view>
  22. </view>
  23. <u-loadmore :status="status" :load-text="loadText" v-if="page_no > 1" />
  24. <u-modal
  25. v-model="goFollowShow"
  26. :content-style="{ fontSize: '32rpx' }"
  27. @confirm="goFollowShowBtn"
  28. :show-cancel-button="isCancelBtn"
  29. :confirm-text="confirmText"
  30. @cancel="isCancelBtn = false"
  31. :show-title="false"
  32. :cancel-style="{ borderRight: '1rpx solid #EBEBEB' }"
  33. :confirm-style="{ fontWeight: '700' }"
  34. >
  35. <view class="slot-content">
  36. <rich-text :nodes="accounts"></rich-text>
  37. </view>
  38. </u-modal>
  39. <Loading />
  40. </view>
  41. </template>
  42. <script>
  43. import { Reports, Research, Report } from "@/config/api.js";
  44. import mixinsAuthorTheme from "../components/mixinsAuthorTheme";
  45. export default {
  46. data() {
  47. return {
  48. tabBarList: [
  49. {
  50. name: "更新时间",
  51. value: 2,
  52. },
  53. {
  54. name: "关注度",
  55. value: 1,
  56. },
  57. ],
  58. };
  59. },
  60. mixins: [mixinsAuthorTheme],
  61. methods: {
  62. //kol
  63. async getDataList() {
  64. const res = await Research.researchKolList({
  65. PageSize: this.pageSize,
  66. CurrentIndex: this.page_no,
  67. ThemeType: this.tabBarActive,
  68. });
  69. if (res.Ret === 200) {
  70. this.status = res.Data.Paging.IsEnd ? "nomore" : "loadmore";
  71. if (this.refresh) {
  72. uni.stopPullDownRefresh();
  73. this.refresh = false;
  74. }
  75. this.dataList = this.page_no === 1 ? res.Data.List || [] : [...this.dataList, ...res.Data.List];
  76. }
  77. },
  78. //去往作者详情
  79. authorDetails(item) {
  80. uni.navigateTo({
  81. url: "/reportPages/authorPages/authorPages?id=" + item.DepartmentId,
  82. });
  83. },
  84. },
  85. };
  86. </script>
  87. <style lang="scss" scope>
  88. .theme-hot-content {
  89. padding-bottom: 30rpx;
  90. @import "../components/cssAuthorTheme.scss";
  91. .hot-item {
  92. display: flex;
  93. align-items: center;
  94. .hot-icon {
  95. width: 30rpx !important;
  96. height: 30rpx !important;
  97. }
  98. }
  99. }
  100. </style>