App Router 的 intercepting routes + parallel routes 做模态框,理论很美,实际上首屏从外层路由跳进模态路由时经常闪一下,或者刷新直接进纯页面。
试过的解法:
- parallel route 的
default.tsx必须写,否则 404。 - intercept 的层级要跟实际路由严格匹配。
- 模态关闭时用
router.back(),别用router.push()。
最稳的方案是:模态内容做成 query 参数驱动,路由层只是装饰。复杂度低很多。
大家 intercept + parallel 这套用得多吗?还是直接客户端状态管模态?