#svelte #sveltekit
Вопрос:
У меня есть структура проекта:
__layout.svelte <- requests header nav links in its load function
articles/
__layout.svelte <- requests list of tags for left sidebar in its load function provides column layout
index.svelte <- list of all articles
u[id].svelte <- list of articles made by specific user and some detailed user info
[id].svelte <- detail page of specific article
about.svelte
contacts.svelte
Итак, URL-адреса выглядят так:
/articles
/articles/u504
/articles/504
/about
/contacts
Как я могу опустить /articles
URL-адреса, чтобы они были такими:
/
/u504
/504
/about
/contacts
?
Я пробовал играть, config.kit.vite.server.proxy
но, как и ожидалось, это работает только для сервера
Наверное, есть способ манипулировать с manifest.js
помощью ?
Ответ №1:
Вместо этого вы могли бы превратить /articles/__layout.svelte
файл в компонент, который вы можете поместить внутрь u[id].svelte
amp; [id].svelte
.
Вы можете использовать слот для достижения этой цели
Комментарии:
1. Я пробовал, функция load() работает только в макетах или страницах, а не в компонентах(
2. Вы могли бы поместить
load()
внутриu[id].svelte
amp;[id].svelte
вместо компонента.3. Хочу, чтобы это было описано один раз. В моем случае действительно было гораздо больше, чем тогда
u[id].svelte
и[id].svelte
4. Извлеките его в функцию, а затем вызовите ее в обоих случаях.