mount method
Mount a handler below a prefix.
Implementation
void mount(String prefix, Function handler) {
if (!prefix.startsWith('/')) {
throw ArgumentError.value(prefix, 'prefix', 'must start with a slash');
}
if (prefix.endsWith('/')) {
_all(
'$prefix<$_kMountedPathParamRest|[^]*>',
(RequestContext context, List<String> params) {
return _invokeMountedHandler(
context,
handler,
// Remove path param from extracted route params
[...params]..removeLast(),
);
},
mounted: true,
);
} else {
_all(
prefix,
(RequestContext context, List<String> params) {
return _invokeMountedHandler(context, handler, params);
},
mounted: true,
);
_all(
'$prefix/<$_kMountedPathParamRest|[^]*>',
(RequestContext context, List<String> params) {
return _invokeMountedHandler(
context,
handler,
// Remove path param from extracted route params
[...params]..removeLast(),
);
},
mounted: true,
);
}
}