extended-salmon
extended-salmonโ€ข2y ago

Multi level menu without nested URL

I am using the following document to create nested items in the sidebar, but the URL of the nested items is always having the name of the parent item. https://refine.dev/docs/advanced-tutorials/multi-level-menu/ Nested Item in the sidebar: CMS -> posts Actual URL: <root>/cms/posts Expected URL: <root>/posts I have already used the 'options: { route: "posts" }' in the nested element.
6 Replies
flat-fuchsia
flat-fuchsiaโ€ข2y ago
Unfortunately, we do not have a feature that supports this. I couldn't find workaround either. But I have a radical idea. If I understand correctly, you want to categorize the sider regardless of the route, right? you can achieve this with custom sider. you can follow this code. https://refine.dev/docs/examples/customization/customSider/ and for starting point, you can swizzle your <Sider> component. https://refine.dev/docs/packages/documentation/cli/#swizzle
extended-salmon
extended-salmonโ€ข2y ago
Yes, I want to categorize the items in sider. I will look in the custom sider and get back to you. Thanks
Omer
Omerโ€ข2y ago
You can also try the custom pages feature @Hanif Mianjee https://refine.dev/docs/advanced-tutorials/custom-pages/
Custom Pages | refine
This document is related to how to create custom pages for react applications. Since Nextjs and Remix has a file system based router built on the page concept, you can create your custom pages under the pages or routes folder.
extended-salmon
extended-salmonโ€ข2y ago
Already using a custom page for some of the routes. Custom sider can be used because the menuItems are generated using useMenu(). and it is already constructing the nested URLs
flat-fuchsia
flat-fuchsiaโ€ข2y ago
my idea is to do it without using multi level menu (parentName etc.). That's why I say radical ๐Ÿ˜„ You can get all routes and resource from useMenu() and categorize it yourself. unfortunately in current implementation multi level menu changes the route
extended-salmon
extended-salmonโ€ข2y ago
๐Ÿ˜„ Thanks