Optional param in vuejs router Optional param in vuejs router vue.js vue.js

Optional param in vuejs router


Just adding a question mark ? will make it optional.

{    path: '/offers/:member?',    ...},

It works for Vue Router 2.0 onward.

Source: https://github.com/vuejs/vue-router/issues/235#issuecomment-245447122


Additionally, you can also send different params, from where you call your route.

<router-link    :to="{     name: 'ComponentName',     params: { member: {}, otherParams: {} }     }">


For advanced matching patterns the manual says :

vue-router uses path-to-regexp as its path matching engine, so it supports many advanced matching patterns such as optional dynamic segments, zero or more / one or more requirements, and even custom regex patterns. Check out its documentation for these advanced patterns, and this example of using them in vue-router.

path-to-regexp page/manual => https://github.com/pillarjs/path-to-regexp/tree/v1.7.0#parameters