UrlMatcher
一个用于匹配路由和 URL 的函数。 当 path
和 pathMatch
的组合不足以表达时,可以为 Route.matcher
实现一个自定义的 URL 匹配器。
A function for matching a route against URLs. Implement a custom URL matcher for Route.matcher
when a combination of path
and pathMatch
is not expressive enough. Cannot be used together with path
and pathMatch
.
type UrlMatcher = (segments: UrlSegment[], group: UrlSegmentGroup, route: Route) => UrlMatchResult | null;
说明
该函数采用以下参数,并返回一个 UrlMatchResult
对象。
The function takes the following arguments and returns a UrlMatchResult
object.
segment :URL 段的数组。
segments : An array of URL segments.
group :段组。
group : A segment group.
route :要匹配的路由。
route : The route to match against.
下列例子中实现的匹配器会匹配 HTML 文件。
The following example implementation matches HTML files.
export function htmlFiles(url: UrlSegment[]) {
return url.length === 1 && url[0].path.endsWith('.html') ? ({consumed: url}) : null;
}
export const routes = [{ matcher: htmlFiles, component: AnyComponent }];