discovery.${defaultHomepage()} 将匹配由 top-menu 设置设定的着陆路由。它将同时匹配根 URL / 和特定路由,例如 /categories。
根据我的经验,在使用 defaultHomepage() 构建自定义主页时,有两个复杂问题:
- 它所基于的路由不再可用作纯列表视图。
- 用户可以在其界面设置中设置自己的默认主页。因此,要么需要禁用该功能,要么需要有一个主页概念,该概念适用于任何顶部菜单路由。
要仅在根 URL 上构建自定义主页,可以检查 router.currentURL === '/'。默认情况下,这仅匹配根 URL /,而不匹配顶部菜单设置中设置的着陆路由。但是,侧边栏链接现在具有逻辑,可以尝试将给定的 URL 与路由匹配。因此,默认情况下它在侧边栏链接上不起作用。我刚刚发布了一个关于此的帖子:Can I have sidebar links that don’t resolve an url to a route?
据我所知,目前没有默认方法可以在根 URL 上构建自定义主页,而又不影响顶部菜单的路由或遇到侧边栏问题。如果能提供该选项将是极好的。