nextjs路由定制,路由嵌套,自定义路由,pages配置

本文探讨了如何在Next.js项目中进行路由定制和目录结构优化。通过在`server.js`中设置`dir`属性,可以实现期望的项目结构,将路由与业务组件分离。当在`client`目录下组织`pages`和`components`时,需确保在`package.json`的`build`命令中指定`client`目录,以防编译错误。对于小型项目,直接在根目录创建`components`也是可行的。若不需要`server.js`,可在Next.js的脚本命令后添加目录名称,利用其内置服务器实现相同效果。
摘要由CSDN通过智能技术生成

众所周知,nextjs使用项目根目录下的pages文件夹作为默认的路由路径,也就是说在pages下配置的文件夹会自动作为对应的路由路径,那么如何配置自己理想的项目结构?

经过查找在配置server.js时,使用next生成应用dir属性设置(server.js不止这点儿代码)。

const next = require("next");
const app = next({
  dir: "./client", // base directory where everything is, could move to src later
  dev
});

如此设置便可以达到下图的项目结构效果,同时打包的内容在client下的.next文件夹里,pages作为路由的页面入口,components文件夹作为主要开发的业务组件,引入到pages目录里,如此便可以将路由和业务区分开来。

ps: 当然如果项目不大,可以直接在根目录新建components目录,不必非要放在client下。

但是如此build编译打包会报错是为什么呢?

因为没有指定文件夹,会默认在根目录编译,那么找不到pages文件夹就会报错,可以在package.json文件下build时增加你的client目录,如图

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值