tangled
alpha
login
or
join now
bwc9876.dev
/
manhunt-app
0
fork
atom
Live location tracking and playback for the game "manhunt"
0
fork
atom
overview
issues
pulls
1
pipelines
Fix top-level await
bwc9876.dev
9 months ago
134abbba
30a75b56
verified
This commit was signed with the committer's
known signature
.
bwc9876.dev
SSH Key Fingerprint:
SHA256:DanMEP/RNlSC7pAVbnXO6wzQV00rqyKj053tz4uH5gQ=
+11
-4
1 changed file
expand all
collapse all
unified
split
frontend
src
components
App.tsx
+11
-4
frontend/src/components/App.tsx
···
1
1
import React from "react";
2
2
+
import useSWR from "swr";
2
3
import { AppScreen, commands } from "@/bindings";
3
4
import { useTauriEvent } from "@/lib/hooks";
4
5
import { unwrapResult } from "@/lib/result";
···
22
23
}
23
24
}
24
25
25
25
-
const startingScreen = unwrapResult(await commands.getCurrentScreen());
26
26
-
27
26
export default function App() {
28
28
-
const [screen, setScreen] = React.useState<AppScreen>(startingScreen);
27
27
+
const { data: screen, mutate } = useSWR(
28
28
+
"fetch-screen",
29
29
+
async () => {
30
30
+
return unwrapResult(await commands.getCurrentScreen());
31
31
+
},
32
32
+
{ suspense: true, dedupingInterval: 100 }
33
33
+
);
29
34
30
30
-
useTauriEvent("changeScreen", setScreen);
35
35
+
useTauriEvent("changeScreen", (newScreen) => {
36
36
+
mutate(newScreen);
37
37
+
});
31
38
32
39
return (
33
40
<>