下拉加载成功得到数据了,但是想往下拉查看下面的商品列表,却还是在下拉加载,也下不去
来源:6-1 上拉加载更多
qq_慕无忌9185596
2019-09-22 16:40:27
<template> <swiper :options="swiperOption" ref='swiper'> <div class="mine-scroll-pull-down" v-if="pullDown"> <me-loading :text="pullDownText" inline ref="pullDownLoading"></me-loading> </div> <swiper-slide> <slot></slot> </swiper-slide> <div class="mine-scroll-pull-up" v-if="pullUp"> <me-loading :text="pullUpText" inline ref="pullUpLoading"></me-loading> </div> <div class="swiper-scrollbar" v-if="scrollbar" slot="scrollbar"></div> </swiper> </template> <script> import {swiper, swiperSlide} from 'vue-awesome-swiper'; import MeLoading from 'base/loading/loading'; import {PULL_DOWN_HEIGHT, PULL_DOWN_TEXT_INIT, PULL_DOWN_TEXT_START, PULL_DOWN_TEXT_ING, PULL_DOWN_TEXT_END, PULL_UP_TEXT_INIT, PULL_UP_HEIGHT, PULL_UP_TEXT_START, PULL_UP_TEXT_ING, PULL_UP_TEXT_END} from './config'; export default { name: 'Scroll', props: { scrollbar: { type: Boolean, default: true }, finished: { type: Boolean }, pullDown: { type: Boolean, default: false }, pullUp: { type: Boolean, default: false } }, data() { return { pulling: false, pullDownText: PULL_DOWN_TEXT_INIT, pullUpText: PULL_UP_TEXT_INIT, swiperOption: { direction: 'vertical', slidesPerView: 'auto', freeMode: true, setWrapperSize: true, scrollbar: { el: this.scrollbar ? '.swiper-scrollbar' : null, hide: true }, on: { sliderMove: this.scroll, touchEnd: this.touchEnd } } }; }, components: { swiper, swiperSlide, MeLoading }, watch: { finished() { this.updataScroll(); } }, methods: { updataScroll() { this.$refs.swiper && this.$refs.swiper.swiper.update(); }, scroll() { const swiper = this.$refs.swiper.swiper; if (this.pulling) { return; } if (swiper.translate > 0) { if (!this.pullDown) { return; } if (swiper.translate > PULL_DOWN_TEXT_END) { this.$refs.pullDownLoading.setText(PULL_DOWN_TEXT_START); } else { this.$refs.pullDownLoading.setText(PULL_DOWN_TEXT_INIT); } } else if (swiper.isEnd) { if (!this.pullUp) { return; } const isPullUp = Math.abs(swiper.translate) + swiper.height - PULL_UP_HEIGHT > parseInt(swiper.$wrapperEl.css('height')); if (isPullUp) { this.$refs.pullUpLoading.setText(PULL_UP_TEXT_START); } else { this.$refs.pullUpLoading.setText(PULL_UP_TEXT_INIT); } } }, touchEnd() { if (this.pulling) { return; } const swiper = this.$refs.swiper.swiper; if (swiper.translate > 0) { if (!this.pullDown) { return; } this.pulling = true; swiper.allowTouchMove = false; // 禁止触摸 swiper.setTransition(swiper.params.speed); swiper.setTranslate(PULL_DOWN_HEIGHT); swiper.params.virtualTranslate = true; // 定住不给回弹 this.$refs.pullDownLoading.setText(PULL_DOWN_TEXT_ING); this.$emit('pull-down-fun', this.pullDownFun); } else if (swiper.isEnd) { const totalHeight = parseInt(swiper.$wrapperEl.css('height')); const isPullUp = Math.abs(swiper.translate) + swiper.height - PULL_UP_HEIGHT > totalHeight; if (isPullUp) { // 上拉 if (!this.pullUp) { return; } this.pulling = true; swiper.allowTouchMove = false; // 禁止触摸 swiper.setTransition(swiper.params.speed); swiper.setTranslate(-(totalHeight + PULL_UP_HEIGHT - swiper.height)); swiper.params.virtualTranslate = true; // 定住不给回弹 this.$refs.pullUpLoading.setText(PULL_UP_TEXT_ING); this.$emit('pull-up-fun', this.pullUpEnd); } } }, pullDownFun() { const swiper = this.$refs.swiper.swiper; this.pulling = false; this.$refs.pullDownLoading.setText(PULL_DOWN_TEXT_END); swiper.params.virtualTranslate = false; swiper.allowTouchMove = true; swiper.setTransition(swiper.params.speed); swiper.setTranslate(0); }, pullUpEnd() { const swiper = this.$refs.swiper.swiper; this.pulling = false; this.$refs.pullUpLoading.setText(PULL_UP_TEXT_END); swiper.params.virtualTranslate = false; swiper.allowTouchMove = true; console.log('ture'); } } }; </script> <style lang="scss" scoped> .swiper-container{ height: 100%; width: 100%; overflow: hidden; } .swiper-slide{ height: auto; } .mine-scroll-pull-up, .mine-scroll-pull-down { position: absolute; left: 0; width: 100%; } .mine-scroll-pull-down { bottom: 100%; height: 80px; } .mine-scroll-pull-up { top: 100%; height: 30px; } </style>
1回答
同学你好, 老师在源码中测试你粘贴的这段代码,没有出现同学截图的这种情况。
建议: 可以将你的与首页相关的代码都粘贴过来, 便于老师准确高效的帮助你解决问题
祝学习愉快~~~~
相似问题
回答 2
回答 4