diff --git a/docs/pages/api-references/future-api/api-pipelining.en.mdx b/docs/pages/api-references/future-api/api-pipelining.en.mdx index 27cab8755..968a5ee53 100644 --- a/docs/pages/api-references/future-api/api-pipelining.en.mdx +++ b/docs/pages/api-references/future-api/api-pipelining.en.mdx @@ -14,15 +14,25 @@ async function main() { let initialLoaderData: unknown | null = null; for (const activity of config.activities) { - const t = makeTemplate({ path: activity.route }); - const match = t.parse(location.pathname + location.search); + let t: ReturnType | null = null; + + if (typeof activity.route === "string") { + t = makeTemplate({ path: activity.route }); + } else if (typeof activity.route === "object") { + t = makeTemplate(activity.route); + } - if (!match) { + if (!t) { + continue; + } + + const match = t.parse(location.pathname + location.search); + if (!match || !activity.loader) { continue; } // 1. Request API data (do not await) - initialLoaderData = activity.loader({ params: match as any }); + initialLoaderData = activity.loader({ params: match as any, config }); break; } diff --git a/docs/pages/api-references/future-api/api-pipelining.ko.mdx b/docs/pages/api-references/future-api/api-pipelining.ko.mdx index b25d7e45c..dd409cdba 100644 --- a/docs/pages/api-references/future-api/api-pipelining.ko.mdx +++ b/docs/pages/api-references/future-api/api-pipelining.ko.mdx @@ -14,15 +14,25 @@ async function main() { let initialLoaderData: unknown | null = null; for (const activity of config.activities) { - const t = makeTemplate({ path: activity.route }); - const match = t.parse(location.pathname + location.search); + let t: ReturnType | null = null; + + if (typeof activity.route === "string") { + t = makeTemplate({ path: activity.route }); + } else if (typeof activity.route === "object") { + t = makeTemplate(activity.route); + } - if (!match) { + if (!t) { + continue; + } + + const match = t.parse(location.pathname + location.search); + if (!match || !activity.loader) { continue; } // 1. API 데이터를 요청해요 (await하지 않아요) - initialLoaderData = activity.loader({ params: match as any }); + initialLoaderData = activity.loader({ params: match as any, config }); break; }