Use group routes for better route organization.
.group(options)
options
{Object} - [Optional]options.name
{String} - [Optional] Route's nameoptions.prefix
{String} - [Optional] Route prefixoptions[prop-name]
{Any} - [Optional] Any property which will be available inside route calloptions[hook-name]
{Function} - [Optional] See all available hooks- Returns {Group}
const adminRoutes = FlowRouter.group({
prefix: '/admin',
name: 'admin',
triggersEnter: [(context, redirect) => {
console.log('running group triggers');
}]
});
// handling /admin/ route
adminRoutes.route('/', {
name: 'adminIndex',
action() { /* ... */ }
});
// handling /admin/posts
adminRoutes.route('/posts', {
name: 'adminPosts',
action() { /* ... */ }
});
const adminRoutes = FlowRouter.group({
prefix: '/admin',
name: 'admin'
});
const superAdminRoutes = adminRoutes.group({
prefix: '/super',
name: 'superadmin'
});
// handling /admin/super/post
superAdminRoutes.route('/post', {
action() { /* ... */ }
});
FlowRouter.current().route.group.name
This can be useful for determining if the current route is in a specific group (e.g. admin, public, loggedIn) without needing to use prefixes if you don't want to. If it's a nested group, you can get the parent group's name with:
FlowRouter.current().route.group.parent.name