国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

el-select數據過多懶加載的解決(loadmore)

2019-11-19 11:26:27
字體:
來源:轉載
供稿:網友

el-select數據過多處理方式

在日常項目中el-select組件的使用頻率是非常之高的. 當數據過多時渲染時間非常長, 這里提供幾個處理方式.

遠程搜索

組件提供了遠程搜索方式, 也就是按照你輸入的結果匹配選項.

下拉懶加載loadMore

下拉懶加載, 當select滾動到底部時, 你再去請求一部分數據, 加入到當前數據中.

某組件中:

<template>  <el-select    v-model="value"    placeholder="請選擇"    filterable    multiple    v-el-select-loadmore="loadmore"  >    <el-option      v-for="item in options"      :key="item.id"      :label="item.label"      :value="item.id">    </el-option>  </el-select></template> export default {  directives: {    'el-select-loadmore': {      bind(el, binding) {        // 獲取element-ui定義好的scroll盒子        const SELECTWRAP_DOM = el.querySelector('.el-select-dropdown .el-select-dropdown__wrap');        SELECTWRAP_DOM.addEventListener('scroll', function () {          /**          * scrollHeight 獲取元素內容高度(只讀)          * scrollTop 獲取或者設置元素的偏移值,常用于, 計算滾動條的位置, 當一個元素的容器沒有產生垂直方向的滾動條, 那它的scrollTop的值默認為0.          * clientHeight 讀取元素的可見高度(只讀)          * 如果元素滾動到底, 下面等式返回true, 沒有則返回false:          * ele.scrollHeight - ele.scrollTop === ele.clientHeight;          */          const condition = this.scrollHeight - this.scrollTop <= this.clientHeight;          if (condition) {            binding.value();          }        });      }    }  },  data() {    return {      value: '',      options: [],      formData: {        pageIndex: 1,        pageSize: 20,      }    };  },  mounted() {    this.getList(this.formData);  },  methods: {    loadmore() {      this.formData.pageIndex++;      this.getList(this.formData);    },    getList(formData) {      // 這里是接口請求數據, 帶分頁條件      const _res = [1, 2, 3]; // 請求得到的數據      this.options = [...this.options, ..._res];    }  }};

這樣就做到了滾動懶加載, 具體細節在應用時修改.

問題

這樣渲染問題解決了, 隨之會出現一個問題, 就是當你的value為選中的數據后, 分頁數大的數據.

當頁數小時, options數據中沒有當前value的那一個, value就會顯示為得到的id.

當你選中后你要保存下來當前的id以及lable, 下次過來時, 帶入當前組件, 手動放在options中,這樣就解決了這個問題.

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阿坝| 苗栗市| 迁安市| 如东县| 绩溪县| 宁阳县| 比如县| 蕲春县| 郁南县| 延川县| 社会| 辽宁省| 定南县| 宜宾市| 迭部县| 上林县| 台南县| 三明市| 蓝山县| 蒲城县| 台北县| 巩义市| 麻城市| 重庆市| 甘肃省| 馆陶县| 达孜县| 乐至县| 辽阳市| 易门县| 石屏县| 拉孜县| 钟祥市| 芜湖县| 兴隆县| 石棉县| 孝感市| 若尔盖县| 龙门县| 沾益县| 宝应县|