如何在expo-router中隐藏整个路由文件夹?配置时遇警告
在Expo Router的Tabs中隐藏整个路由文件夹
你想用customer/*通配符的方式隐藏整个路由文件夹,但这种写法不被Expo Router支持,因此触发了路由匹配警告。
可行的解决方案:
用路由组直接隔离(推荐)
把整个customer文件夹放到一个带括号的路由组里,比如(hidden)/customer/[id]/details、(hidden)/customer/[id]/create-order。路由组的命名规则是括号包裹名称,Expo Router默认不会将组内的路由自动添加到Tabs导航中,无需额外配置就能实现隐藏效果。逐个隐藏子路由
如果不想调整文件夹结构,就手动逐个声明需要隐藏的子路由:<Tabs.Screen name="customer/[id]/details" options={{ href: null }} /> <Tabs.Screen name="customer/[id]/create-order" options={{ href: null }} />这种方式虽然需要逐个配置,但能精准控制每个路由的隐藏状态,避免通配符匹配错误。
警告内容翻译:
WARN [Layout children]: 嵌套子路由中不存在名为"customer/[i*"的路由:["(auth)/sign-in", "customer/[id]/details", "customer/[id]/create-order"...
内容的提问来源于stack exchange,提问作者Null Head
相关产品推荐
相关产品推荐

