91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在element-ui的select下拉框如何實現滾動加載

發布時間:2021-08-07 11:03:48 來源:億速云 閱讀:460 作者:小新 欄目:web開發

這篇文章給大家分享的是有關在element-ui的select下拉框如何實現滾動加載的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

這里通過自定義封裝vue指令進行封裝。

以下以element-ui中的select為例:

 在main.js同級別文件中添加directives.js:

// directives.js

import Vue from 'vue'
Vue.directive('loadmore', {
 bind (el, binding) {
  // 獲取element-ui定義好的scroll盒子
  const SELECTWRAP_DOM = el.querySelector('.el-select-dropdown .el-select-dropdown__wrap')
  SELECTWRAP_DOM.addEventListener('scroll', function () {
   
   const CONDITION = this.scrollHeight - this.scrollTop <= this.clientHeight
   if (CONDITION) {
    binding.value()
   }
  })
 }
})
  • v-loadmore: 用于在element-ui的select下拉框加上滾動到底事件監聽

  • scrollHeight 獲取元素內容高度(只讀)

  • scrollTop 獲取或者設置元素的偏移值,常用于, 計算滾動條的位置, 當一個元素的容器沒有產生垂直方向的滾動條, 那它的scrollTop的值默認為0.

  • clientHeight 讀取元素的可見高度(只讀)

如果元素滾動到底, 下面等式返回true, 沒有則返回false

scrollHeight - scrollTop === clientHeight

這里運用到了滾動偏移來做監聽來處理,這與聊天對話框中默認下拉到底部的原理是大同小異的,后續我會有專門的文章進行講解。

// main.js
// 注冊滾動條加載觸發事件v-loadmore綁定
import directives from './directives'
Vue.use(directives)

然后在組件中使用

<!-- vue -->
<el-select
 v-model="chatmode"
 placeholder="聊天模式"
 size="mini"
 v-loadmore="loadMore">
 <el-option
  v-for="item in chatmodes"
  :key="item.value"
  :label="item.qa_name"
  :value="item.qa_code"
  :disabled="item.disabled">
 </el-option>
</el-select>
<script>
export default {
 methods: {
  loadMore () {
   // 這里寫入要觸發的方法
  }
 }
}
</script>

感謝各位的閱讀!關于“在element-ui的select下拉框如何實現滾動加載”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安岳县| 普格县| 濉溪县| 桃园市| 永嘉县| 临海市| 福鼎市| 望奎县| 龙江县| 吴桥县| 印江| 墨脱县| 尤溪县| 远安县| 固安县| 武威市| 青田县| 奇台县| 清流县| 马山县| 出国| 南城县| 东兰县| 时尚| 明光市| 汨罗市| 筠连县| 夹江县| 镇远县| 马龙县| 米泉市| 墨脱县| 嵩明县| 建始县| 威远县| 舞钢市| 抚州市| 成安县| 红桥区| 龙陵县| 淮阳县|