diff --git a/src/main.js b/src/main.js index facb2ce..aa8601c 100644 --- a/src/main.js +++ b/src/main.js @@ -108,6 +108,24 @@ import Sortable from 'sortablejs'; // } = require('../mock') // mockXHR() // } + +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(); + } + }); + } +}); + + + new Vue({ el: '#app', diff --git a/src/utils/request.js b/src/utils/request.js index 7503673..0bf72fc 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -20,7 +20,7 @@ let loading ; const service = axios.create({ baseURL: process.env.VUE_APP_BASE_API, // url = base url + request url // withCredentials: true, // send cookies when cross-domain requests - timeout: 5000, // request timeout + timeout: 15000, // request timeout isLoading:true }) diff --git a/src/views/resource/components/addLr.vue b/src/views/resource/components/addLr.vue index 5db89ae..02a78f9 100644 --- a/src/views/resource/components/addLr.vue +++ b/src/views/resource/components/addLr.vue @@ -116,10 +116,12 @@ PN:
- - + +
There is no more data
+
Loading More
@@ -195,7 +197,9 @@ table_name: 'literature_references', isShow: false, id: '', - type: 'add', + type: 'add', + productPage:1, + lastPage:0, productList: [], categoryList: [], applicationList: [], @@ -294,10 +298,19 @@ async getProductList() { const res = await getProduct({ - page_size: 9999, - page: 1 - }) - this.productList = res.data + page_size: 100, + page: this.productPage + }) + this.lastPage = res.last_page + this.productList.push(...res.data) + }, + loadMore() { + // 这里写入要触发的方法 + this.productPage += 1; + if(this.productPage>this.lastPage){ + return + } + this.getProductList(); }, submit() {