面试题答案
一键面试- 获取
id
参数:- 在SvelteKit的
[id].svelte
页面中,可以通过$page.params
来获取动态路由参数id
。首先需要从$app/stores
中导入page
存储:
<!-- [id].svelte --> import { page } from '$app/stores'; import { onMount } from'svelte'; let id; $: { $page.params.id && (id = $page.params.id); }
- 在SvelteKit的
- 使用
id
从API获取数据:- 可以在
onMount
生命周期函数中发起API请求。假设我们使用fetch
来获取数据,代码如下:
<script> import { page } from '$app/stores'; import { onMount } from'svelte'; let data; let id; $: { $page.params.id && (id = $page.params.id); } onMount(async () => { if (id) { const response = await fetch(`your - api - url/${id}`); if (response.ok) { data = await response.json(); } else { console.error('Failed to fetch data'); } } }); </script>
- 在上述代码中,
your - api - url
需要替换为实际的API地址。当页面加载时(onMount
),如果获取到了id
,就会向API发送请求,请求的URL包含id
参数,然后根据响应结果处理数据。如果请求成功,将数据存储在data
变量中,可在页面中进一步使用。
- 可以在