新增内部包在菜单显示而Turborepo默认包不显示,原因是什么?
关于Turborepo内部包在Next.js菜单中显示的问题
相关截图


问题描述
我按照官方指南,为基于Turborepo构建的Next.js项目添加了一个内部包。启动项目后,该新包出现在左侧菜单中,此情况是否正常?
但Turborepo创建的默认包并未显示在菜单中,这种行为是否符合预期?若不符合,是什么原因导致新内部包出现在菜单中?
解答
- 新内部包出现在侧边菜单不是Turborepo+Next.js的默认行为,属于非预期情况。
- 默认包不显示、新包显示的差异,通常是添加新包时的额外操作或配置导致:
- 新包的代码中可能包含了菜单注册逻辑,比如组件或入口文件里写了向主项目菜单系统注册的代码,被主项目识别加载。
- 检查新包的
package.json,看是否配置了特殊的入口路径,导致主项目扫描到了包含菜单相关的文件;或者主项目本身有自动扫描内部包生成菜单的自定义逻辑(比如基于文件系统路由的自动菜单生成)。 - 对比默认包和新包的目录结构,新包若包含
pages/app目录,而你的菜单是基于Next.js路由自动生成的,就会被纳入菜单。
- 若不需要该包出现在菜单中,可排查上述点,移除相关注册逻辑或调整包的配置。
内容的提问来源于stack exchange,提问作者Mehrad Farahnak
相关产品推荐
相关产品推荐

