diff --git a/src/routes/__layout.svelte b/src/routes/__layout.svelte index 06747d1..8cce3ac 100644 --- a/src/routes/__layout.svelte +++ b/src/routes/__layout.svelte @@ -6,9 +6,10 @@ import { page } from '$app/stores'; import { userData, userDataLocal, apiStatus } from '$lib/stores'; import { loadOrders, loadApiStatus } from '$lib/orders'; - import { onMount } from 'svelte'; + import { onMount, onDestroy } from 'svelte'; let bundle = null + let uds = null onMount(async () => { bundle = await api.loadBundle($page.url.hostname === 'localhost') @@ -18,7 +19,7 @@ userData.set(JSON.parse(userDataLS)) } - userData.subscribe(ud => { + uds = userData.subscribe(ud => { localStorage.setItem('userData', JSON.stringify(ud)) }) @@ -26,6 +27,12 @@ await loadOrders($userData) }) + onDestroy(() => { + //userData.unsubscribe(uds) + }) + + + // load orders diff --git a/src/routes/vstupenky.svelte b/src/routes/vstupenky.svelte index 8fe2c2d..f9a52fd 100644 --- a/src/routes/vstupenky.svelte +++ b/src/routes/vstupenky.svelte @@ -245,10 +245,14 @@ function removeOrder (id) { userData.update(ud => { - console.log('change', id) + console.log('change', ud.orders, id) let index = ud.orders.indexOf(id) if (index >= 0) { - ud.orders.splice(index, 1) + if (ud.orders.length === 1) { + ud.orders = [] + } else { + ud.orders.splice(index, 1) + } } return ud })