Commit 7948207f authored by 罗超's avatar 罗超

2

parent b42c30ac
...@@ -344,9 +344,9 @@ export default { ...@@ -344,9 +344,9 @@ export default {
lower(e) { lower(e) {
if (data.msg.pageIndex < data.PageCount) { if (data.msg.pageIndex < data.PageCount) {
data.pageState = "loading"; data.pageState = "loading";
data.msg.pageIndex++;
if (data.timer) clearTimeout(data.timer); if (data.timer) clearTimeout(data.timer);
data.timer = setTimeout(() => { data.timer = setTimeout(() => {
data.msg.pageIndex++;
that.getList(); that.getList();
}, 1000); }, 1000);
} else { } else {
......
This diff is collapsed.
...@@ -140,9 +140,9 @@ export default { ...@@ -140,9 +140,9 @@ export default {
lower(e) { lower(e) {
if (data.msg.PageIndex < data.PageCount) { if (data.msg.PageIndex < data.PageCount) {
data.pageState = "loading"; data.pageState = "loading";
data.msg.PageIndex++;
if (data.timer) clearTimeout(data.timer); if (data.timer) clearTimeout(data.timer);
data.timer = setTimeout(() => { data.timer = setTimeout(() => {
data.msg.PageIndex++;
that.getList(); that.getList();
}, 1000); }, 1000);
} else { } else {
...@@ -158,7 +158,7 @@ export default { ...@@ -158,7 +158,7 @@ export default {
if (data.msg.PageIndex === 1) { if (data.msg.PageIndex === 1) {
data.examList = res.Data.PageData; data.examList = res.Data.PageData;
} else { } else {
data.examList = [...res.Data.PageData, ...data.examList]; data.examList = [...data.examList,...res.Data.PageData];
} }
if (data.msg.PageIndex >= res.Data.PageCount) { if (data.msg.PageIndex >= res.Data.PageCount) {
data.pageState = "none"; data.pageState = "none";
......
<template> <template>
<view class=""> <view class="">
<van-toast id="van-toast" /> <van-toast id="van-toast" />
<view class="list-con"> <view class="list-con">
<van-empty description="暂无数据" v-if="dataList.length === 0" /> <van-empty description="暂无数据" v-if="dataList.length === 0" />
<scroll-view <scroll-view :scroll-top="0" scroll-y="true" class="scroll-box" @scrolltolower="lower"
:scroll-top="0" v-if="dataList.length > 0">
scroll-y="true" <view v-for="(item, index) in dataList" :key="index" class="list-item flex flex_between_center"
class="scroll-box" @click="jumpPage(item.Id)">
@scrolltolower="lower" <image class="left" :src="item.Img"></image>
v-if="dataList.length > 0" <view class="right">
> <view class="one_line title">{{ item.Title }}</view>
<view <view class="one_line digest">{{ item.Digest }}</view>
v-for="(item, index) in dataList" </view>
:key="index" </view>
class="list-item flex flex_between_center" <Loadmore :state="pageState" />
@click="jumpPage(item.Id)" </scroll-view>
> </view>
<image class="left" :src="item.Img"></image> </view>
<view class="right">
<view class="one_line title">{{ item.Title }}</view>
<view class="one_line digest">{{ item.Digest }}</view>
</view>
</view>
<Loadmore :state="pageState" />
</scroll-view>
</view>
</view>
</template> </template>
<script> <script>
import { reactive, toRefs, getCurrentInstance, onMounted } from "vue"; import {
import { getLearningGardenList } from "../../api/index"; reactive,
import { debounce } from "../../utils/index"; toRefs,
import Loadmore from "../../components/loadmore.vue"; getCurrentInstance,
export default { onMounted
components: { } from "vue";
Loadmore, import {
}, getLearningGardenList
setup(props, context) { } from "../../api/index";
let data = reactive({ import {
pageTitle: "日语学习园地", debounce
msg: { } from "../../utils/index";
PageIndex: 1, import Loadmore from "../../components/loadmore.vue";
PageSize: 10, export default {
rowsPerPage: 10, components: {
Title: "", Loadmore,
}, },
dataList: [], setup(props, context) {
pageState: "more", let data = reactive({
pageCount: 0, pageTitle: "日语学习园地",
timer: null, //防抖 msg: {
}); PageIndex: 1,
let methods = { PageSize: 10,
back() { rowsPerPage: 10,
uni.navigateBack(); Title: "",
}, },
jumpPage(id) { dataList: [],
uni.navigateTo({ pageState: "more",
url: "/pages/learningGarden/learningGardenDetails?Id=" + id, pageCount: 0,
}); timer: null, //防抖
}, });
async getList() { let methods = {
let res = await getLearningGardenList(data.msg); back() {
if (res) { uni.navigateBack();
if (data.timer) data.timer = null; },
if (data.msg.PageIndex === 1) { jumpPage(id) {
data.dataList = res.Data.PageData; uni.navigateTo({
} else { url: "/pages/learningGarden/learningGardenDetails?Id=" + id,
data.dataList = [...res.Data.PageData, ...data.dataList]; });
} },
data.pageCount = res.Data.PageCount; async getList() {
if (data.msg.PageIndex >= res.Data.PageCount) { let res = await getLearningGardenList(data.msg);
data.pageState = "none"; if (res) {
} else { if (data.timer) data.timer = null;
data.pageState = "more"; if (data.msg.PageIndex === 1) {
} data.dataList = res.Data.PageData;
} } else {
}, data.dataList = [...data.dataList, ...res.Data.PageData];
lower(e) { }
if (data.msg.PageIndex < data.pageCount) { data.pageCount = res.Data.PageCount;
data.pageState = "loading"; if (data.msg.PageIndex >= res.Data.PageCount) {
data.msg.PageIndex++; data.pageState = "none";
if (data.timer) clearTimeout(data.timer); } else {
data.timer = setTimeout(() => { data.pageState = "more";
that.getList(); }
}, 1000); }
} else { },
data.pageState = "none"; lower(e) {
} if (data.msg.PageIndex < data.pageCount) {
}, data.pageState = "loading";
}; if (data.timer) clearTimeout(data.timer);
onMounted(() => { data.timer = setTimeout(() => {
that.getList(); data.msg.PageIndex++;
}); that.getList();
let that = methods; }, 1000);
return { } else {
...toRefs(data), data.pageState = "none";
...methods, }
}; },
}, };
onLoad() { onMounted(() => {
uni.setNavigationBarTitle({ that.getList();
title: this.pageTitle, });
}); let that = methods;
}, return {
}; ...toRefs(data),
...methods,
};
},
onLoad() {
uni.setNavigationBarTitle({
title: this.pageTitle,
});
},
};
</script> </script>
<style scoped> <style scoped>
.list-con { .list-con {
height: calc(100vh - 20rpx); height: calc(100vh - 20rpx);
box-sizing: border-box; box-sizing: border-box;
padding: 15rpx 30rpx; padding: 15rpx 30rpx;
margin-top: 10rpx; margin-top: 10rpx;
} }
.scroll-box {
height: 100%; .scroll-box {
width: 100%; height: 100%;
} width: 100%;
.list-item { }
margin: 20rpx 0;
} .list-item {
.left { margin: 20rpx 0;
width: 220rpx; }
height: 120rpx;
border-radius: 20rpx; .left {
box-shadow: 0rpx 10rpx 30rpx 0rpx rgba(36, 36, 36, 0.2); width: 220rpx;
} height: 120rpx;
.right { border-radius: 20rpx;
width: 440rpx; box-shadow: 0rpx 10rpx 30rpx 0rpx rgba(36, 36, 36, 0.2);
height: 120rpx; }
}
.right .title { .right {
font-size: 30rpx; width: 440rpx;
font-family: PingFang SC; height: 120rpx;
font-weight: bold; }
color: #111111;
line-height: 70rpx; .right .title {
} font-size: 30rpx;
.right .digest { font-family: PingFang SC;
font-size: 24rpx; font-weight: bold;
font-family: PingFang SC; color: #111111;
font-weight: 500; line-height: 70rpx;
color: #999999; }
line-height: 30rpx;
} .right .digest {
font-size: 24rpx;
font-family: PingFang SC;
font-weight: 500;
color: #999999;
line-height: 30rpx;
}
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment