当前位置: 首页 > news >正文

next项目app router 中layout命名规范

目前正在使用next15重构项目,记录一下我偏好的目录结构和命名规范

1、目录结构

src/├── app/                    # App Router 主目录│   ├── layout.tsx         # Root layout│   ├── page.tsx│   └── ...│├── components/            # 组件目录│   ├── layout/           # 布局相关组件│   │   ├── Header.tsx    │   │   ├── Footer.tsx│   │   ├── Sidebar.tsx│   │   └── index.ts      # 统一导出│   └── ...

在 layout.tsx 中使用这些组件的示例:

import { Header, Footer } from '@/components/layout'export default function RootLayout({children,
}: {children: React.ReactNode
}) {return (<html lang="en"><body><Header /><main>{children}</main><Footer /></body></html>)
}

2、建议:

1、将布局组件放在 components/layout 目录下,便于管理和维护

2、可以创建一个 index.ts 统一导出这些组件:

export { default as Header } from './Header'
export { default as Footer } from './Footer'
export { default as Sidebar } from './Sidebar'
  1. 如果布局组件比较复杂,可以在每个组件下创建子组件:
components/├── layout/│   ├── Header/│   │   ├── index.tsx│   │   ├── Logo.tsx│   │   └── Navigation.tsx│   ├── Footer/│   └── Sidebar/

http://www.mrgr.cn/news/64422.html

相关文章:

  • 15分钟学 Go 第 35 天:Go的性能调优 (7000字详细教程)
  • C++线程池
  • 【位域打包CAN报文】通过位域打包CAN报文的数据,实现精确控制每个(CAN信号)字段
  • Django中分组查询(annotate 和 aggregate 使用)
  • openssl-ec-chn命令手册
  • Spark窗口函数
  • ViT面试知识点
  • Google Guava 发布订阅模式/生产消费者模式 使用详情
  • SpringMVC的执行流程以及运行原理
  • 单链表OJ题(3):合并两个有序链表、链表分割、链表的回文结构
  • Oracle视频基础1.4.2练习
  • FFmpeg 4.3 音视频-多路H265监控录放C++开发十. 多线程控制帧率。
  • 大学新生入门编程的最佳选择:为什么我推荐Python?
  • RSI是指在5G通信技术中用于标识小区的特定参数
  • Spring框架中的AOP是什么?如何使用AOP实现切面编程和拦截器功能?
  • 3.2链路聚合
  • P3-2.【结构化程序设计】第二节——知识要点:多分支选择语句
  • 2024年系统架构师---下午题目真题
  • php开发实战分析(8):优化MySQL分页查询与数量统计,提升数据库性能
  • sql在hive和阿里云maxComputer的区别
  • 合并区间 leetcode56
  • 【云备份项目】json以及jsoncpp库的使用
  • 在Zetero中调用腾讯云API的输入密钥的问题
  • 快速上手 Windows 命令:简化你的工作流程
  • tauri开发中如果取消了默认的菜单项,复制黏贴撤销等功能也就没有了,解决办法
  • Oracle OCP认证考试考点详解082系列09