新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本文实例讲述了vue实现的上拉加载更多数据/分页功能。分享给大家供大家参考,具体如下:
尖草坪网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联建站于2013年创立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
加载状态
js
export default { name: '', data () { return { list: [], now_item: '', current_index: 0, list_param: {page: 1}, no_data: false, has_log: 0 } }, components: { XInput }, created () { this.get('/api/index/index', this.list_param).then((data) => { this.list = data.data.data this.list_param.page += 1 }) window.addEventListener('scroll', this.onScroll) }, methods: { onScroll () { this.has_log = 1 let innerHeight = document.querySelector('#app').clientHeight let outerHeight = document.documentElement.clientHeight let scrollTop = document.documentElement.scrollTop // console.log(innerHeight + ' ' + outerHeight + ' ' + scrollTop) // console.log(outerHeight + scrollTop - 30) // console.log(innerHeight) if (outerHeight + scrollTop === innerHeight + 57) { if (this.no_data === true) { this.has_log = 2 return false } this.get('/api/index/index', this.list_param).then((data) => { if (data.data.data.length > 0) { this.list = [...this.list, ...data.data.data] this.list_param.page = this.list_param.page + 1 this.has_log = 0 } else { this.has_log = 2 this.no_data = true } }) } } } }
希望本文所述对大家vue.js程序设计有所帮助。