Я пытаюсь проверить location.pathname
. Я передаю путь к функции с помощью регулярных выражений. Путь может быть:
/dashboard
/dashboard/orders
И location.pathname
может быть:
/dashboard
/dashboard/orders
/dashboard/orders/5ea5c95684c28d4b7ff688e1
/dashboard/orders/anyOtherId
То, что я хочу сделать, при передаче /dashboard/orders/5ea5c95684c28d4b7ff688e1
как location.pathname
совпадает только с path
/dashboard/orders
, а не с /dashboard
.
Тестирование Regex в https://regexr.com/ Я мог заставить его работать: \/dashboard\/*
, затем я попытался реализовать его в javascript:
const matcher = new RegExp(`${path}\/*`)
matcher.test(location.pathname)
Однако, когда я передаю path = /dashboard/orders
и location.pathname = /dashboard/orders/5ea5c95684c28d4b7ff688e1
, он совпадает с /dashboard
и /dashboard/orders
. Мне нужно, чтобы оно совпадало только с /dashboard/orders
. /dashboard
должно совпадать только тогда, когда path
равно /dashboard
и location.pathname = /dashboard
.
Как мне этого добиться?
Заранее спасибо
Редактировать: Быть более ясно, мне нужно, чтобы оно возвращало значение true, когда path
равно /dashboard/orders
и location.pathname
равно /dashboard/orders
или /dashboard/orders/5ea5c95684c28d4b7ff688e1
.
Но оно должно возвращать значение false, когда path
равно /dashboard
и location.pathname
равно /dashboard/orders
или /dashboard/orders/5ea5c95684c28d4b7ff688e1