mirror of
https://github.com/mayswind/ezbookkeeping.git
synced 2026-05-19 17:24:26 +08:00
fix transaction list not display after expand the month transaction list
This commit is contained in:
@@ -1274,9 +1274,9 @@ export const useTransactionsStore = defineStore('transactions', () => {
|
|||||||
return services.getTransactionPictureUrlWithToken(pictureInfo.originalUrl, disableBrowserCache);
|
return services.getTransactionPictureUrlWithToken(pictureInfo.originalUrl, disableBrowserCache);
|
||||||
}
|
}
|
||||||
|
|
||||||
function collapseMonthInTransactionList({ month, collapse }: { month: TransactionMonthList, collapse: boolean }): void {
|
function collapseMonthInTransactionList({ monthList, collapse }: { monthList: TransactionMonthList, collapse: boolean }): void {
|
||||||
if (month) {
|
if (monthList) {
|
||||||
month.opened = !collapse;
|
monthList.opened = !collapse;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -177,7 +177,9 @@
|
|||||||
:key="transactionMonthList.yearMonth" v-for="(transactionMonthList) in transactions">
|
:key="transactionMonthList.yearMonth" v-for="(transactionMonthList) in transactions">
|
||||||
<f7-accordion-item :opened="transactionMonthList.opened"
|
<f7-accordion-item :opened="transactionMonthList.opened"
|
||||||
@accordion:open="collapseTransactionMonthList(transactionMonthList, false)"
|
@accordion:open="collapseTransactionMonthList(transactionMonthList, false)"
|
||||||
@accordion:close="collapseTransactionMonthList(transactionMonthList, true)">
|
@accordion:opened="onTransactionMonthListCollapseStateChanged"
|
||||||
|
@accordion:close="collapseTransactionMonthList(transactionMonthList, true)"
|
||||||
|
@accordion:closed="onTransactionMonthListCollapseStateChanged">
|
||||||
<f7-block-title :id="getTransactionMonthTitleDomId(transactionMonthList.yearMonth)" v-if="pageType === TransactionListPageType.List.type">
|
<f7-block-title :id="getTransactionMonthTitleDomId(transactionMonthList.yearMonth)" v-if="pageType === TransactionListPageType.List.type">
|
||||||
<f7-accordion-toggle>
|
<f7-accordion-toggle>
|
||||||
<f7-list strong inset dividers media-list
|
<f7-list strong inset dividers media-list
|
||||||
@@ -202,13 +204,15 @@
|
|||||||
</f7-list>
|
</f7-list>
|
||||||
</f7-accordion-toggle>
|
</f7-accordion-toggle>
|
||||||
</f7-block-title>
|
</f7-block-title>
|
||||||
<f7-accordion-content :style="{ height: getTransactionMonthListHeight(transactionMonthList) }">
|
<f7-accordion-content>
|
||||||
|
<f7-block :style="{ height: getTransactionMonthListHeight(transactionMonthList) }"
|
||||||
|
v-if="isTransactionMonthListInvisible(transactionMonthList)" />
|
||||||
<f7-list strong inset dividers media-list accordion-list
|
<f7-list strong inset dividers media-list accordion-list
|
||||||
class="transaction-info-list transaction-month-list combination-list-content"
|
class="transaction-info-list transaction-month-list combination-list-content"
|
||||||
:id="getTransactionMonthListDomId(transactionMonthList.yearMonth)"
|
:id="getTransactionMonthListDomId(transactionMonthList.yearMonth)"
|
||||||
v-if="!isTransactionMonthListInvisible(transactionMonthList)"
|
v-if="!isTransactionMonthListInvisible(transactionMonthList)"
|
||||||
>
|
>
|
||||||
<f7-list-item swipeout chevron-center
|
<f7-list-item swipeout chevron-center accordion-item
|
||||||
class="transaction-info"
|
class="transaction-info"
|
||||||
:id="getTransactionDomId(transaction)"
|
:id="getTransactionDomId(transaction)"
|
||||||
:link="transaction.type !== TransactionType.ModifyBalance ? `/transaction/detail?id=${transaction.id}&type=${transaction.type}` : null"
|
:link="transaction.type !== TransactionType.ModifyBalance ? `/transaction/detail?id=${transaction.id}&type=${transaction.type}` : null"
|
||||||
@@ -807,14 +811,14 @@ function getTransactionDomId(transaction: Transaction): string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function isTransactionMonthListInvisible(transactionMonthList: TransactionMonthList): boolean {
|
function isTransactionMonthListInvisible(transactionMonthList: TransactionMonthList): boolean {
|
||||||
if (!transactionMonthList.opened) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!transactionYearMonthListHeights.value[transactionMonthList.yearMonth]) {
|
if (!transactionYearMonthListHeights.value[transactionMonthList.yearMonth]) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!transactionMonthList.opened) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
if (transactionInvisibleYearMonths.value[transactionMonthList.yearMonth]) {
|
if (transactionInvisibleYearMonths.value[transactionMonthList.yearMonth]) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -823,10 +827,6 @@ function isTransactionMonthListInvisible(transactionMonthList: TransactionMonthL
|
|||||||
}
|
}
|
||||||
|
|
||||||
function getTransactionMonthListHeight(transactionMonthList: TransactionMonthList): string {
|
function getTransactionMonthListHeight(transactionMonthList: TransactionMonthList): string {
|
||||||
if (!transactionMonthList.opened) {
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isTransactionMonthListInvisible(transactionMonthList)) {
|
if (isTransactionMonthListInvisible(transactionMonthList)) {
|
||||||
return transactionYearMonthListHeights.value[transactionMonthList.yearMonth] + 'px';
|
return transactionYearMonthListHeights.value[transactionMonthList.yearMonth] + 'px';
|
||||||
}
|
}
|
||||||
@@ -1407,17 +1407,15 @@ function remove(transaction: Transaction | null, confirm: boolean): void {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function collapseTransactionMonthList(month: TransactionMonthList, collapse: boolean): void {
|
function collapseTransactionMonthList(monthList: TransactionMonthList, collapse: boolean): void {
|
||||||
transactionsStore.collapseMonthInTransactionList({
|
transactionsStore.collapseMonthInTransactionList({
|
||||||
month: month,
|
monthList: monthList,
|
||||||
collapse: collapse
|
collapse: collapse
|
||||||
});
|
});
|
||||||
|
|
||||||
nextTick(() => {
|
if (!collapse && transactionInvisibleYearMonths.value[monthList.yearMonth]) {
|
||||||
return setTransactionMonthListHeights(false);
|
delete transactionInvisibleYearMonths.value[monthList.yearMonth];
|
||||||
}).then(() => {
|
}
|
||||||
setTransactionInvisibleYearMonthList();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function onPopoverOpen(event: { $el: Framework7Dom }): void {
|
function onPopoverOpen(event: { $el: Framework7Dom }): void {
|
||||||
@@ -1443,6 +1441,13 @@ function onScroll(): void {
|
|||||||
setTransactionInvisibleYearMonthList();
|
setTransactionInvisibleYearMonthList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function onTransactionMonthListCollapseStateChanged(): void {
|
||||||
|
setTransactionMonthListHeights(false)
|
||||||
|
.then(() => {
|
||||||
|
setTransactionInvisibleYearMonthList();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
window.addEventListener('resize', onResize);
|
window.addEventListener('resize', onResize);
|
||||||
onInfiniteScrolling(onScroll);
|
onInfiniteScrolling(onScroll);
|
||||||
|
|||||||
Reference in New Issue
Block a user