面试题答案
一键面试setContext
和getContext
基本使用方法:setContext
:- 在Svelte中,
setContext
函数用于在父组件中设置上下文数据。它接受两个参数,第一个参数是一个唯一的标识符(通常是一个字符串),用于在子组件中获取上下文数据时进行匹配;第二个参数是要传递的数据。该函数一般在父组件的脚本部分(<script>
标签内)调用。
- 在Svelte中,
getContext
:getContext
函数用于在子组件中获取父组件设置的上下文数据。它接受一个参数,即与setContext
中使用的相同的唯一标识符。调用getContext
函数会返回通过setContext
设置的数据。该函数一般在子组件的脚本部分调用。
- 示例:
- 父组件(例如
Parent.svelte
):
- 父组件(例如
<script>
import Child from './Child.svelte';
import { setContext } from'svelte';
const contextKey = 'data - key';
const dataToPass = 'Hello from parent';
setContext(contextKey, dataToPass);
</script>
<Child />
- 子组件(例如
Child.svelte
):
<script>
import { getContext } from'svelte';
const contextKey = 'data - key';
const receivedData = getContext(contextKey);
</script>
<p>{receivedData}</p>
在这个示例中,父组件Parent.svelte
使用setContext
通过contextKey
设置了一个字符串数据Hello from parent
。子组件Child.svelte
通过相同的contextKey
使用getContext
获取到了这个字符串数据,并在<p>
标签中显示出来。