Skip to main content

$app/paths

import { asset, assets, base, match, resolve, resolveRoute } from '$app/paths';

asset

Disponible depuis la version 2.26

Résout l’URL d’un asset se trouvant dans votre dossier static, en le préfixant avec config.kit.paths.assets si configuré, ou avec le chemin de base sinon.

Lors du rendu côté serveur, le chemin de base est relatif et dépend de la page en train d’être rendue.

<script>
	import { asset } from '$app/paths';
</script>

<img alt="a potato" src={asset('/potato.jpg')} />
function asset(file: Asset): string;

assets

Utilisez plutôt asset(...)

Un chemin absolu qui matche config.kit.paths.assets.

Si une valeur de config.kit.paths.assets est fournie, elle sera remplacé par '/_svelte_kit_assets' lors de vite dev ou vite preview, puisque les assets ne sont pas encore placés sur leur URL future.

let assets:
	| ''
	| `https://${string}`
	| `http://${string}`
	| '/_svelte_kit_assets';

base

Utilisez plutôt resolve(...)

Une chaîne de caractères qui matche config.kit.paths.base.

Exemple d’usage : <a href="{base}/your-page">Link</a>

let base: '' | `/${string}`;

match

Disponible depuis la version 2.52.0

Fait correspondre un chemin ou une URL à un ID de route et en extrait les paramètres.

import { match } from '$app/paths';

const route = await match('/blog/hello-world');

if (route?.id === '/blog/[slug]') {
	const slug = route.params.slug;
	const response = await fetch(`/api/posts/${slug}`);
	const post = await response.json();
}
function match(
	url: Pathname | URL | (string & {})
): Promise<{
	id: RouteId;
	params: Record<string, string>;
} | null>;

resolve

Disponible depuis la version 2.26

Résout un chemin en le préfixant avec le chemin de base, s’il existe, ou avec un ID de route en remplissant les segments dynamiques avec des paramètres.

Lors du rendu côté serveur, le chemin de base est relatif et dépend de la page en train d’être rendue.

import { resolve } from '$app/paths';

// avec un chemin
const resolved = resolve(`/blog/hello-world`);

// avec un ID de route et ses paramètres
const resolved = resolve('/blog/[slug]', {
	slug: 'hello-world'
});
function resolve<
	T extends
		| RouteIdWithSearchOrHash
		| PathnameWithSearchOrHash
>(...args: ResolveArgs<T>): ResolvedPathname;

resolveRoute

Utilisez plutôt resolve(...)

function resolveRoute<
	T extends
		| RouteIdWithSearchOrHash
		| PathnameWithSearchOrHash
>(...args: ResolveArgs<T>): ResolvedPathname;

Modifier cette page sur Github llms.txt

précédent suivant