Я использую pushState и не использую хэши для структуры URL.
У меня есть маршрут, и у него есть несколько привязок параметров - некоторые необязательные:
route: [
'chart/:chartType/:id',
'chart/:chartType/:id/:view?',
'chart/:chartType/:id/page/:page?',
'chart/:chartType/:id/:view?/page/:page?'
],
а затем у меня есть route-href, и у меня есть необходимые привязки:
route-href="route.bind: chart; params.bind: { id: chartId, chartType: type, view: viewType, page: pageNum }"
... но что, если мне не ВСЕГДА нужны все параметры маршрута для route-href
? Например, я хотел бы иметь возможность ссылаться только на маршрут, который использует chartType и id, без необходимости создавать отдельные маршруты для каждой комбинации параметров, которые у меня есть на этом маршруте.
Я знаю, что могу использовать "?" в конфигурации маршрутизатора указать необязательный маршрут, но как сделать параметры необязательными в моих ссылках route-href?
Делая что-то подобное, выдает ошибку:
route-href="route.bind: chart; params.bind: { id: chartId, chartType: type, view?: viewType, page?: pageNum }"
и я не могу использовать синтаксис .bind
, как это (что также приводит к ошибкам):
route-href="route.bind: chart; params.bind: { id: chartId, chartType: type, view.bind: hasViewParam, page.bind: hasPageParam }"
В чем тут магический синтаксический трюк?