ๅตๅฅๅธๅฑ๏ผNested Layout๏ผ
ๅคงๅคๆฐๆถๅ๏ผๅพ้ๅๅฐๅธๅฑ็ธไบๅตๅฅใ ไธไธช้กต้ข็ๅ ๅฎนๅฏไปฅๅตๅฅๅจ่ฎธๅคๅธๅฑไธญใ
src/
โโโ routes/
โโโ layout.tsx # Parent layout
โโโ about/
โโโ layout.tsx # Child layout
โโโ index.tsx # https://example.com/about
ๅจไธ้ข็ไพๅญไธญ๏ผๆไธคไธชๅธๅฑๅบ็จไบ /about
้กต้ข็ปไปถใ
src/routes/layout.tsx
src/routes/about/layout.tsx
ๅจ่ฟ็งๆ ๅตไธ๏ผๅคไธชlayoutsๅฐ็ธไบๅตๅฅใ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ src/routes/layout.tsx โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ src/routes/about/layout.tsx โ โ
โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ
โ โ โ src/routes/about/index.tsx โ โ โ
โ โ โ โ โ โ
โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ
โ โ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
// File: src/routes/layout.tsx
export default component$(() => {
return (
<main>
<Slot /> {/* <== Child layout/route inserted here */}
</main>
);
});
// File: src/routes/about/layout.tsx
export default component$(() => {
return (
<section>
<Slot /> {/* <== Child layout/route inserted here */}
</section>
);
});
// File: src/routes/about/index.tsx
export default component$(() => {
return <h1>About</h1>;
});
ไธ้ขไพๅญไผๆธฒๆไธ้ข็HTML๏ผ
<main>
<section>
<h1>About</h1>
</section>
</main>
้ป่ฎคๆ
ๅตไธ๏ผ้กต้ขๅฐ้่ฟๅไธ้ๅฝๆฏไธช็ฎๅฝ็ดๅฐๅฐ่พพ /src/routes
็ฎๅฝๆฅๅๅปบๅ
ถๅธๅฑๅ ๆ ใ
ๅฆๆๅจไปปไฝๆถๅๆณ่ฎฉๅฎๅๆญขๅไธ้ๅฝ็ฎๅฝ๏ผๆจๅฏไปฅไฝฟ็จ top layout ๅ่ฝใ