vue 瀑布流组件的添加

近日,有个前端需求是 对下拉框数据不允许初始化全部数据,因为线上数据量是几千条 全部加载 影响用户体验,于是 项目经理提出,点击组件时再触发后台查询前10条数据,向下滑动加载10条,直到最后加载完成。

话不多说,上代码

load-select.vue组件

<template>
  <el-select
    value-key="id"
    :value="value"
    v-loadmore="loadMore"
    @focus="focus"
    @clear="clear"
    @change="change"
    filterable
    remote
    :filter-method="handleSearch"
    :loading="loading"
    clearable
    v-bind="$attrs"
    v-on="$listeners"
  >
    <el-option
      v-for="option in data"
      :label="option[dictLabel]"
      :value="option"
      :key="option.id"
    ></el-option>

    <!-- 此处加载中的value可以随便设置,只要不与其他数据重复即可 -->
    <el-option v-if="hasMore" disabled label="加载中..." value="-1"></el-option>
  </el-select>
</template>

<script>
export default {
  props: {
    value: {
      default: ""
    },
    // 列表数据
    data: {
      type: Array,
      default: () => []
    },
    dictLabel: {
      type: String,
      default: "name"
    },
    dictValue: {
      type: String,
      //default: "uid"
      default: "id"
    },
    // 调
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值