Jay V 8 месяцев назад
Родитель
Сommit
0e58f488df
2 измененных файлов с 11 добавлено и 3 удалено
  1. 3 1
      packages/web/src/components/Share.tsx
  2. 8 2
      packages/web/src/pages/s/[id].astro

+ 3 - 1
packages/web/src/components/Share.tsx

@@ -425,12 +425,14 @@ function ToolFooter(props: { time: number }) {
 }
 
 export default function Share(props: {
+  id: string
   api: string
   info: SessionInfo
   messages: Record<string, SessionMessage>
 }) {
+  const id = props.id
+
   let params = new URLSearchParams(document.location.search)
-  const id = params.get("id")
 
   const [store, setStore] = createStore<{
     info?: SessionInfo

+ 8 - 2
packages/web/src/pages/s/index.astro → packages/web/src/pages/s/[id].astro

@@ -6,7 +6,7 @@ import Share from "../../components/Share.tsx";
 
 const apiUrl = import.meta.env.VITE_API_URL;
 
-const id = Astro.url.searchParams.get('id')
+const { id } = Astro.params;
 const res = await fetch(`${apiUrl}/share_data?id=${id}`);
 const data = await res.json();
 
@@ -39,7 +39,13 @@ const ogImage = data.ogImage;
     ],
   }}
 >
-  <Share api={apiUrl} info={data.info} messages={data.messages} client:only="solid" />
+  <Share
+    id={id}
+    api={apiUrl}
+    info={data.info}
+    messages={data.messages}
+    client:only="solid"
+  />
 </StarlightPage>
 
 <style is:global>