@@ -29,23 +33,43 @@
import { API_BASE_URL } from '../main'
import TimeManager from '../utils/time'
import MilkTeaActivityComponent from '../components/MilkTeaActivityComponent.vue'
+import { hatch } from 'ldrs'
+hatch.register()
export default {
name: 'ActivityListPageView',
components: { MilkTeaActivityComponent },
data() {
- return { activities: [], TimeManager }
+ return {
+ activities: [],
+ TimeManager,
+ isLoadingActivities: false
+ }
},
async mounted() {
- const res = await fetch(`${API_BASE_URL}/api/activities`)
- if (res.ok) {
- this.activities = await res.json()
+ this.isLoadingActivities = true
+ try {
+ const res = await fetch(`${API_BASE_URL}/api/activities`)
+ if (res.ok) {
+ this.activities = await res.json()
+ }
+ } catch (e) {
+ console.error(e)
+ } finally {
+ this.isLoadingActivities = false
}
- }
+ },
}