You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

119 lines
3.1 KiB

8 months ago
  1. <template>
  2. <view class="content">
  3. <mNavbar title="粉丝" :leftClick="leftClick" />
  4. <view style="background: #f5f5f5; min-height: calc(100vh - 570rpx);">
  5. <view class="item-card">
  6. <view class="item-line flex flex-sb" v-for="(item ,index) in nodes">
  7. <view class="flex">
  8. <view style="width:80rpx;height:80rpx;margin-right:24rpx;border-radius: 50%;overflow: hidden;" class="test">
  9. <image style="width: 100%;height: 100%;"
  10. :src="item.headImage" mode="aspectFill"></image>
  11. </view>
  12. <view>
  13. <view style="">{{ item.nickName }}</view>
  14. <view style="color: #909090; font-size: 24rpx">创建时间{{ dataFormat(item.createTime) }}</view>
  15. </view>
  16. </view>
  17. <view>
  18. <!-- <view style="line-height: 80rpx;color: #fc5341;">下单12单佣金840</view> -->
  19. </view>
  20. </view>
  21. </view>
  22. </view>
  23. </view>
  24. </template>
  25. <script>
  26. import mNavbar from '@/components/base/m-navbar.vue'
  27. export default {
  28. components: {
  29. mNavbar,
  30. },
  31. data() {
  32. return {
  33. queryParams : {
  34. pageNo : 1,
  35. pageSize : 10
  36. },
  37. nodes : [],
  38. loading : false,
  39. finished : false,
  40. }
  41. },
  42. onShow() {
  43. this.getNodes()
  44. },
  45. methods: {
  46. onLoad(){
  47. this.queryParams.pageSize += 10
  48. this.getNodes()
  49. },
  50. leftClick() { //返回个人中心
  51. uni.navigateTo({
  52. url: '/pages/mine/distribution'
  53. })
  54. },
  55. getNodes(){
  56. this.$api('getFans' , this.queryParams , res => {
  57. if(res.code == 200){
  58. this.nodes = res.result.records || [];
  59. this.nodes.forEach(n => {
  60. if(n.defaultId == '1'){
  61. this.selectAddress = n.id
  62. }
  63. })
  64. if(this.queryParams.pageSize > res.result.total){
  65. this.finished = true
  66. }
  67. }
  68. this.loading = false
  69. })
  70. },
  71. clickBanner(){ uni.navigateTo({ url: '/pages/login/login' }) },
  72. clickNotice(){ uni.navigateTo({ url: '/pages/index/notice'}) },
  73. clickFillin(){ uni.navigateTo({ url: '/pages/index/fillin'}) },
  74. clickSpring(){ uni.navigateTo({ url: '/pages/spring/vote' }) },
  75. clickSpRank(){ uni.navigateTo({ url: '/pages/spring/rank' }) },
  76. clickMore(){ uni.navigateTo({ url: '/pages/index/infor' }) },
  77. clickStar(){ uni.navigateTo({ url: '/pages/star/index' }) },
  78. clickVote(){ uni.switchTab({ url: '/pages/star/vote' }) },
  79. clickRank(){ uni.switchTab({ url: '/pages/index/rank' }) },
  80. clickInfo(id){ uni.navigateTo({ url: `/pages/index/infod?id=${id}`}) },
  81. dataFormat(time){
  82. let backendTime = this.dayjs(time);
  83. return backendTime.format('YYYY-MM-DD');
  84. }
  85. }
  86. }
  87. </script>
  88. <style>
  89. body{
  90. background-color: #f5f5f5;
  91. }
  92. .item-card{
  93. width: calc(710rpx);
  94. margin: 20rpx;
  95. font-size: 28rpx;
  96. font-family: PingFang SC, PingFang SC-Bold;
  97. font-weight: 700;
  98. text-align: left;
  99. color: #333333;
  100. justify-content: space-between;
  101. }
  102. .item-line{
  103. align-items: center;
  104. box-sizing: border-box;
  105. border-radius: 16rpx;
  106. background-color: #fff;
  107. line-height: 40rpx;
  108. width: calc(100% - 80rpx);
  109. height: 80rpx;
  110. padding: 0rpx 20rpx;
  111. margin-bottom: 20rpx;
  112. width: 100%;
  113. height: 140rpx;
  114. }
  115. </style>