Я сделал функцию сопоставления для модуля маршрутизации, но получил странную ошибку: не могу прочитать свойство 'path' с нулевым значением, даже если я проверяю существование объекта.
export function contentMatcher(url) {
//for simplifying, assume that all checks returned true
return {
consumed: url,
posParams: {
type: new UrlSegment(url[0].path, {}),
item: url[1] ? new UrlSegment(url[1].path, {}) : null //<------ Cannot read property 'path' of null
}
}
}
const routes: Routes = [
{
matcher: contentMatcher,
component: ContentComponent
}
]
Я знаю, что должен экспортировать функцию matcher, потому что aot не поддерживает выражение функции. но я не знаю, требуется ли это также с помощью posParams, и даже так, как я могу передать ему 'url'.
решено
проблема решена заменив item: url[1] ? new UrlSegment(url[1].path, {}) : null
на item: new UrlSegment(url[1] ?url[1].path: null, {})