A keyless and typesafe approach to the Svelte context API
npm i svelte-create-context
// context.ts
import { createContext } from 'svelte-create-context';
export const {
set: setUserContext,
get: getUserContext
} = createContext<User>();
// parent component
<script lang="ts">
import { setUserContext } from './context';
setUserContext(new User());
</script>
// child component
<script lang="ts">
import { getUserContext } from 'path-to-parent-component/context';
const currentUser = getUserContext();
</script>
interface Context<T> {
set: (value: T) => void;
get: () => T;
}
function createContext<T>(): Context<T>