perf :包含分页数据页面代码优化

pull/8/head
kele 2023-02-07 15:45:02 +08:00
parent 447ece1a49
commit 29131a3af7
10 changed files with 67 additions and 82 deletions

View File

@ -101,15 +101,11 @@
page, page,
}); });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let couponList = _.concat(state.pagination.data, res.data.data); let couponList = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: couponList, data: couponList,
}; };
} else {
state.pagination = res.data;
}
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';
} else { } else {

View File

@ -48,15 +48,11 @@
page, page,
}); });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let couponlist = _.concat(state.pagination.data, res.data.data); let couponlist = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: couponlist, data: couponlist,
}; };
} else {
state.pagination = res.data;
}
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';
} else { } else {

View File

@ -131,16 +131,11 @@
page, page,
}); });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let orderList = _.concat(state.pagination.data, res.data.data); let orderList = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: orderList, data: orderList,
}; };
} else {
state.pagination = res.data;
}
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';
} else { } else {

View File

@ -144,6 +144,13 @@
import { onLoad, onReachBottom } from '@dcloudio/uni-app'; import { onLoad, onReachBottom } from '@dcloudio/uni-app';
import { reactive } from 'vue'; import { reactive } from 'vue';
import _ from 'lodash'; import _ from 'lodash';
const pagination = {
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
const state = reactive({ const state = reactive({
list: {}, list: {},
couponId: 0, couponId: 0,
@ -182,12 +189,7 @@
}); });
function onTabsChange(e) { function onTabsChange(e) {
state.pagination = { state.pagination = pagination;
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
state.currentTab = e.index; state.currentTab = e.index;
state.categoryId = e.value; state.categoryId = e.value;
getGoodsList(state.categoryId); getGoodsList(state.categoryId);
@ -201,15 +203,11 @@
is_category_deep: false, is_category_deep: false,
}); });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let couponlist = _.concat(state.pagination.data, res.data.data); let couponlist = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: couponlist, data: couponlist,
}; };
} else {
state.pagination = res.data;
}
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';
} else { } else {
@ -234,6 +232,7 @@
data.items_value.forEach((i) => { data.items_value.forEach((i) => {
state.tabMaps.push({ name: i.name, value: i.id }); state.tabMaps.push({ name: i.name, value: i.id });
}); });
state.pagination = pagination
getGoodsList(state.tabMaps[0].value); getGoodsList(state.tabMaps[0].value);
} }
// //

View File

@ -91,6 +91,12 @@
import { computed, reactive } from 'vue'; import { computed, reactive } from 'vue';
import _ from 'lodash'; import _ from 'lodash';
const pagination = {
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
// //
const state = reactive({ const state = reactive({
currentTab: 0, currentTab: 0,
@ -123,12 +129,7 @@
}, },
]; ];
function onTabsChange(e) { function onTabsChange(e) {
state.pagination = { state.pagination = pagination
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
state.currentTab = e.index; state.currentTab = e.index;
state.type = e.value; state.type = e.value;
if (state.currentTab == 0) { if (state.currentTab == 0) {
@ -141,15 +142,11 @@
state.loadStatus = 'loading'; state.loadStatus = 'loading';
const res = await sheep.$api.coupon.list({ list_rows, page }); const res = await sheep.$api.coupon.list({ list_rows, page });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let couponlist = _.concat(state.pagination.data, res.data.data); let couponlist = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: couponlist, data: couponlist,
}; };
} else {
state.pagination = res.data;
}
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';
} else { } else {
@ -189,6 +186,7 @@
title: msg, title: msg,
}); });
setTimeout(() => { setTimeout(() => {
state.pagination = pagination
getData(); getData();
}, 1000); }, 1000);
} }

View File

@ -30,6 +30,13 @@
import { computed, reactive } from 'vue'; import { computed, reactive } from 'vue';
import _ from 'lodash'; import _ from 'lodash';
import commentItem from '../components/detail/comment-item.vue'; import commentItem from '../components/detail/comment-item.vue';
const pagination = {
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
const state = reactive({ const state = reactive({
list: [], list: [],
type: [], type: [],
@ -45,12 +52,7 @@
}); });
// //
function onTabsChange(e) { function onTabsChange(e) {
state.pagination = { state.pagination = pagination
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
state.currentTab = e.index; state.currentTab = e.index;
state.code = e.code; state.code = e.code;
getList(state.commentId, e.code); getList(state.commentId, e.code);
@ -69,15 +71,11 @@
page, page,
}); });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let orderList = _.concat(state.pagination.data, res.data.data); let orderList = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: orderList, data: orderList,
}; };
} else {
state.pagination = res.data;
}
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';
} else { } else {

View File

@ -124,6 +124,12 @@
const sys_navBar = sheep.$platform.navbar; const sys_navBar = sheep.$platform.navbar;
const emits = defineEmits(['close', 'change']); const emits = defineEmits(['close', 'change']);
const pagination = {
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
const state = reactive({ const state = reactive({
pagination: { pagination: {
data: [], data: [],
@ -198,12 +204,7 @@
} }
function emptyList() { function emptyList() {
state.pagination = { state.pagination = pagination
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
state.leftGoodsList = []; state.leftGoodsList = [];
state.rightGoodsList = []; state.rightGoodsList = [];
count = 0; count = 0;
@ -256,15 +257,11 @@
page, page,
}); });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let couponList = _.concat(state.pagination.data, res.data.data); let couponList = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: couponList, data: couponList,
}; };
} else {
state.pagination = res.data;
}
mountMasonry(); mountMasonry();
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';

View File

@ -75,6 +75,12 @@
import { computed, reactive } from 'vue'; import { computed, reactive } from 'vue';
import _ from 'lodash'; import _ from 'lodash';
const pagination = {
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
const state = reactive({ const state = reactive({
currentTab: 0, currentTab: 0,
showApply: false, showApply: false,
@ -111,12 +117,7 @@
]; ];
// //
function onTabsChange(e) { function onTabsChange(e) {
state.pagination = { state.pagination = pagination
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
state.currentTab = e.index; state.currentTab = e.index;
getOrderList(); getOrderList();
} }
@ -130,15 +131,11 @@
page, page,
}); });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let orderList = _.concat(state.pagination.data, res.data.data); let orderList = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: orderList, data: orderList,
}; };
} else {
state.pagination = res.data;
}
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';
@ -156,6 +153,7 @@
if (res.confirm) { if (res.confirm) {
const { error } = await sheep.$api.order.aftersale.cancel(orderId); const { error } = await sheep.$api.order.aftersale.cancel(orderId);
if (error === 0) { if (error === 0) {
state.pagination = pagination
getOrderList(); getOrderList();
} }
} }
@ -171,6 +169,7 @@
if (res.confirm) { if (res.confirm) {
const { error } = await sheep.$api.order.aftersale.delete(orderId); const { error } = await sheep.$api.order.aftersale.delete(orderId);
if (error === 0) { if (error === 0) {
state.pagination = pagination
getOrderList(); getOrderList();
} }
} }

View File

@ -105,7 +105,14 @@
import { reactive } from 'vue'; import { reactive } from 'vue';
import { onLoad, onReachBottom } from '@dcloudio/uni-app'; import { onLoad, onReachBottom } from '@dcloudio/uni-app';
import _ from 'lodash'; import _ from 'lodash';
const sys_navBar = sheep.$platform.navbar; const sys_navBar = sheep.$platform.navbar;
const pagination = {
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
const state = reactive({ const state = reactive({
pagination: { pagination: {
data: [], data: [],
@ -126,15 +133,11 @@
page, page,
}); });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let orderList = _.concat(state.pagination.data, res.data.data); let orderList = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: orderList, data: orderList,
}; };
} else {
state.pagination = res.data;
}
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';
} else { } else {
@ -178,6 +181,7 @@
state.editMode = false; state.editMode = false;
state.selectedCollectList = []; state.selectedCollectList = [];
state.selectAll = false; state.selectAll = false;
state.pagination = pagination
getData(); getData();
} }
} }

View File

@ -85,7 +85,7 @@
class="ss-reset-button ui-BG-Main-Gradient pay-btn ss-font-28 ui-Shadow-Main" class="ss-reset-button ui-BG-Main-Gradient pay-btn ss-font-28 ui-Shadow-Main"
@tap="onCancel" @tap="onCancel"
> >
取消收藏 删除足迹
</button> </button>
</view> </view>
</view> </view>
@ -114,6 +114,12 @@
import _ from 'lodash'; import _ from 'lodash';
const sys_navBar = sheep.$platform.navbar; const sys_navBar = sheep.$platform.navbar;
const pagination = {
data: [],
current_page: 1,
total: 1,
last_page: 1,
};
const state = reactive({ const state = reactive({
pagination: { pagination: {
data: [], data: [],
@ -134,15 +140,11 @@
page, page,
}); });
if (res.error === 0) { if (res.error === 0) {
if (page >= 2) {
let orderList = _.concat(state.pagination.data, res.data.data); let orderList = _.concat(state.pagination.data, res.data.data);
state.pagination = { state.pagination = {
...res.data, ...res.data,
data: orderList, data: orderList,
}; };
} else {
state.pagination = res.data;
}
if (state.pagination.current_page < state.pagination.last_page) { if (state.pagination.current_page < state.pagination.last_page) {
state.loadStatus = 'more'; state.loadStatus = 'more';
} else { } else {
@ -188,6 +190,7 @@
state.editMode = false; state.editMode = false;
state.selectedCollectList = []; state.selectedCollectList = [];
state.selectAll = false; state.selectAll = false;
state.pagination = pagination
getData(); getData();
} }
} }