| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 | <template>  <view class="ss-m-x-20">    <scroll-view class="scrollBox" scroll-y="true" @scrolltolower="loadingMore" style="height: 100vh;">      <view v-if="items.length">        <view v-for="(item, index) in items" :key="index" class="ss-m-t-20" @click="toDetail(item)">          <view style="background-color: #fff; border-radius: 12px;" class="ss-p-30">            <view class="d-flex align-center">              <image :src="item.logoUrl || 'https://minio.citupro.com/dev/menduner/company-avatar.png'" class="avatar" style="width: 50px; height: 50px; object-fit: contain"></image>              <view style="flex: 1;" class="ss-m-l-30">                <view class="enterprise-name ellipsis">{{ item.name }}</view>                <view class="ss-m-y-15 font-size-12">                  <span class="tag-gap color-666">                    <span>{{ item.financingName }}</span>                    <span class="ss-m-x-10" v-if="item.financingName && item.industryName">|</span>                    <span>{{item.industryName }}</span>                    <span class="ss-m-x-10" v-if="item.scaleName">|</span>                    <span>{{item.scaleName }}</span>                  </span>                </view>                <view>                  <uni-tag                     v-for="(tag, i) in item.tagList || []"                    :key="i"                    class="ss-m-r-10"                    :text="tag"                    inverted="false"                    size="mini"                    custom-style="background-color: #eef1f7;color:#7f828b;border-color:#eef1f7;"                  />                </view>              </view>            </view>          </view>        </view>        <uni-load-more :status="status" />      </view>      <view v-else class="nodata-img-parent">        <image src="https://minio.citupro.com/dev/static/nodata.png" mode="widthFix" style="width: 100vw;height: 100vh;"></image>      </view>    </scroll-view>  </view></template><script setup>import { ref } from 'vue'import { getSubscribeEnterprise } from '@/api/user'import { dealDictArrayData } from '@/utils/position'const items = ref([])const status = ref('more')const queryParams = ref({  pageSize: 10,  pageNo: 1})const getList = async () => {  const { data } = await getSubscribeEnterprise(queryParams.value)  let list = data?.list || []  if (list?.length) {    list = dealDictArrayData([], list)    items.value = items.value.concat(list)  }  status.value = list?.length < queryParams.value.pageSize ? 'noMore' : 'more'}getList()// 加载更多const loadingMore = () => {  status.value = 'loading'  queryParams.value.pageNo++  getList()}// 企业详情const toDetail = (item) => {  uni.navigateTo({    url: `/pagesB/companyDetail/index?id=${item.id}`  })}</script><style scoped lang="scss">.enterprise-name {  color: #333;  font-weight: bold;  font-size: 16px;  width: 70vw;  max-width: 70vw;}</style>
 |