Ремикс макетов на нескольких страницах

Я пытаюсь создать макет информационной панели, которая всегда будет иметь одну и ту же боковую панель и заголовок. Единственное, что должно измениться на каждой странице панели управления, — это основная область контента.

маршруты/dashboard.tsx

import { Outlet } from "@remix-run/react";
import Header from "~/components/custom/dashboard/Header";
import Sidenav from "~/components/custom/Sidenav";

export function DashboardLayout({ children }: { children: React.ReactNode }) {
  return (
    <div className = "grid min-h-screen w-full md:grid-cols-[220px_1fr] lg:grid-cols-[280px_1fr]">
      <Sidenav />
      <div className = "flex flex-col">
        <Header />
        <main className = "flex flex-1 flex-col gap-4 p-4 lg:gap-6 lg:p-6">
          <div className = "flex items-center">
            <h1 className = "text-lg font-semibold md:text-2xl">Test</h1>
          </div>
          <div
            className = "flex flex-1 items-center justify-center rounded-lg border border-dashed shadow-sm"
            x-chunk = "dashboard-02-chunk-1"
          >
            <div className = "flex flex-col items-center gap-1 text-center">
              <Outlet />
            </div>
          </div>
        </main>
      </div>
    </div>
  );
}

Затем в приборной панели._index.tsx

const Dashboard = () => {
  return (
    <h1>Welcome to the dashboard</h1>
  );
};

export default Dashboard;

Если я затем пойду в

http://localhost:5173/панель мониторинга/

нет боковой панели или заголовка, только h1.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
0
60
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы правильно создали макет, вам просто нужно экспортировать его по умолчанию.

В routes/dashboard.tsx:

export default function DashboardLayout({ children }: { children: React.ReactNode }) {

Другие вопросы по теме