mirror of
https://github.com/mat-1/matdoesdev.git
synced 2025-08-02 23:44:39 +00:00
fix /buttons/degrees not loading data immediately
This commit is contained in:
parent
aeda90f0a1
commit
bf7d2eb8ef
3 changed files with 20 additions and 15 deletions
|
@ -8,7 +8,6 @@
|
||||||
pageIndexFromName,
|
pageIndexFromName,
|
||||||
} from './88x31'
|
} from './88x31'
|
||||||
import { writable } from 'svelte/store'
|
import { writable } from 'svelte/store'
|
||||||
import { page } from '$app/stores'
|
|
||||||
import ButtonLink from './ButtonLink.svelte'
|
import ButtonLink from './ButtonLink.svelte'
|
||||||
import ExternalLinkIcon from './ExternalLinkIcon.svelte'
|
import ExternalLinkIcon from './ExternalLinkIcon.svelte'
|
||||||
import ExternalLink from './ExternalLink.svelte'
|
import ExternalLink from './ExternalLink.svelte'
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { writable } from 'svelte/store'
|
import { writable } from 'svelte/store'
|
||||||
import { pageIndexFromName, data } from '../88x31'
|
import { pageIndexFromName, data, downloadData } from '../88x31'
|
||||||
import ButtonLink from '../ButtonLink.svelte'
|
import ButtonLink from '../ButtonLink.svelte'
|
||||||
import { onMount } from 'svelte'
|
import { onMount } from 'svelte'
|
||||||
import { page } from '$app/stores'
|
import { page } from '$app/stores'
|
||||||
|
@ -99,22 +99,26 @@
|
||||||
localStorage.setItem('88x31-degrees-targetPage', $targetPage)
|
localStorage.setItem('88x31-degrees-targetPage', $targetPage)
|
||||||
}
|
}
|
||||||
|
|
||||||
onMount(() => {
|
onMount(async () => {
|
||||||
return page.subscribe(async (page) => {
|
await downloadData()
|
||||||
const hash = decodeURIComponent(page.url.hash.slice(1))
|
|
||||||
let [origin, target] = hash.split('→')
|
|
||||||
|
|
||||||
if (origin === undefined) origin = ''
|
updateFromHash()
|
||||||
if (target === undefined) target = ''
|
|
||||||
|
|
||||||
if (origin === '') origin = localStorage.getItem('88x31-degrees-originPage') ?? ''
|
|
||||||
if (target === '') target = localStorage.getItem('88x31-degrees-targetPage') ?? ''
|
|
||||||
|
|
||||||
if (origin !== '' && $originPage !== origin) originPage.set(origin)
|
|
||||||
if (target !== '' && $targetPage !== target) targetPage.set(target)
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
function updateFromHash() {
|
||||||
|
const hash = decodeURIComponent(location.hash.slice(1))
|
||||||
|
let [origin, target] = hash.split('→')
|
||||||
|
|
||||||
|
if (origin === undefined) origin = ''
|
||||||
|
if (target === undefined) target = ''
|
||||||
|
|
||||||
|
if (origin === '') origin = localStorage.getItem('88x31-degrees-originPage') ?? ''
|
||||||
|
if (target === '') target = localStorage.getItem('88x31-degrees-targetPage') ?? ''
|
||||||
|
|
||||||
|
if (origin !== '' && $originPage !== origin) originPage.set(origin)
|
||||||
|
if (target !== '' && $targetPage !== target) targetPage.set(target)
|
||||||
|
}
|
||||||
|
|
||||||
originPage.subscribe(calculatePath)
|
originPage.subscribe(calculatePath)
|
||||||
targetPage.subscribe(calculatePath)
|
targetPage.subscribe(calculatePath)
|
||||||
|
|
||||||
|
@ -126,6 +130,8 @@
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<svelte:window on:hashchange={updateFromHash} />
|
||||||
|
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
bind:value={$originPage}
|
bind:value={$originPage}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue