mirror of
https://github.com/Spythere/stacjownik.git
synced 2026-05-03 05:18:11 +00:00
fix: asynchroniczność pobierania danych z API
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="journal-stats" v-show="!store.isOffline">
|
<div class="journal-stats" v-if="!store.isOffline">
|
||||||
<div class="tabs">
|
<div class="tabs">
|
||||||
<button
|
<button
|
||||||
v-for="tab in data.tabs"
|
v-for="tab in data.tabs"
|
||||||
@@ -22,11 +22,12 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { computed, KeepAlive, onActivated, onDeactivated, reactive, Ref, ref, watch } from 'vue';
|
import { computed, KeepAlive, onActivated, onDeactivated, onMounted, reactive, Ref, ref, watch } from 'vue';
|
||||||
import { useStore } from '../../store/store';
|
import { useStore } from '../../store/store';
|
||||||
import JournalDailyStats from './DailyStats.vue';
|
import JournalDailyStats from './DailyStats.vue';
|
||||||
import JournalDriverStats from './JournalDriverStats.vue';
|
import JournalDriverStats from './JournalDriverStats.vue';
|
||||||
import StorageManager from '../../scripts/managers/storageManager';
|
import StorageManager from '../../scripts/managers/storageManager';
|
||||||
|
import { DataStatus } from '../../scripts/enums/DataStatus';
|
||||||
|
|
||||||
// Types
|
// Types
|
||||||
type TStatTab = 'daily' | 'driver';
|
type TStatTab = 'daily' | 'driver';
|
||||||
@@ -60,17 +61,26 @@ function onTabButtonClick(tab: TStatTab) {
|
|||||||
if (tab == 'daily') {
|
if (tab == 'daily') {
|
||||||
lastDailyStatsOpen.value = areStatsOpen.value;
|
lastDailyStatsOpen.value = areStatsOpen.value;
|
||||||
StorageManager.setBooleanValue('dailyStatsOpen', areStatsOpen.value);
|
StorageManager.setBooleanValue('dailyStatsOpen', areStatsOpen.value);
|
||||||
|
|
||||||
|
if (areStatsOpen.value) dailyStatsComp.value?.startFetchingDailyStats();
|
||||||
}
|
}
|
||||||
|
|
||||||
store.currentStatsTab = tab;
|
store.currentStatsTab = tab;
|
||||||
lastClickedTab.value = tab;
|
lastClickedTab.value = tab;
|
||||||
}
|
}
|
||||||
|
|
||||||
onActivated(() => {
|
onMounted(() => {
|
||||||
dailyStatsComp.value?.startFetchingDailyStats();
|
if (StorageManager.getBooleanValue('dailyStatsOpen')) {
|
||||||
|
dailyStatsComp.value?.startFetchingDailyStats();
|
||||||
if (StorageManager.getBooleanValue('dailyStatsOpen')) areStatsOpen.value = true;
|
areStatsOpen.value = true;
|
||||||
});
|
}
|
||||||
|
}),
|
||||||
|
onActivated(async () => {
|
||||||
|
if (StorageManager.getBooleanValue('dailyStatsOpen')) {
|
||||||
|
dailyStatsComp.value?.startFetchingDailyStats();
|
||||||
|
areStatsOpen.value = true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
onDeactivated(() => {
|
onDeactivated(() => {
|
||||||
dailyStatsComp.value?.stopFetchingDailyStats();
|
dailyStatsComp.value?.stopFetchingDailyStats();
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
optionsType="timetables"
|
optionsType="timetables"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<JournalStats />
|
<JournalStats v-if="dataStatus == DataStatus.Loaded" />
|
||||||
|
|
||||||
<div class="list_wrapper" @scroll="handleScroll">
|
<div class="list_wrapper" @scroll="handleScroll">
|
||||||
<transition name="status-anim" mode="out-in">
|
<transition name="status-anim" mode="out-in">
|
||||||
@@ -165,8 +165,6 @@ export default defineComponent({
|
|||||||
beforeRouteUpdate(to, _) {
|
beforeRouteUpdate(to, _) {
|
||||||
this.handleQueries(to.query);
|
this.handleQueries(to.query);
|
||||||
this.fetchHistoryData();
|
this.fetchHistoryData();
|
||||||
|
|
||||||
console.log('test');
|
|
||||||
},
|
},
|
||||||
|
|
||||||
activated() {
|
activated() {
|
||||||
|
|||||||
Reference in New Issue
Block a user