1、在項(xiàng)目的main.js里注冊(cè)
//?注冊(cè)滾動(dòng)條加載觸發(fā)事件v-loadmore綁定
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下拉框加上滾動(dòng)到底事件監(jiān)聽
scrollHeight?獲取元素內(nèi)容高度(只讀)
scrollTop?獲取或者設(shè)置元素的偏移值,常用于, 計(jì)算滾動(dòng)條的位置, 當(dāng)一個(gè)元素的容器沒有產(chǎn)生垂直方向的滾動(dòng)條, 那它的scrollTop的值默認(rèn)為0.
clientHeight?讀取元素的可見高度(只讀)
如果元素滾動(dòng)到底, 下面等式返回true, 沒有則返回false
scrollHeight?-?scrollTop?===?clientHeight

2.在需要的下拉地方寫方法 如下圖:


借鑒于https://blog.csdn.net/weixin_30498921/article/details/95057744