Ho bisogno di indirizzarmi a un determinato componente in due modi: uno con un parametro, uno senza. Ho cercato parametri opzionali e in qualche modo non riesco a trovare molte informazioni.
Quindi il mio percorso:
{
path: '/offers/:member',
component: Offers,
name: 'offers',
props: true,
meta: {
guest: false,
needsAuth: true
}
},
Quando lo chiamo con il parametro a livello di programmazione, va tutto bene
this.$router.push({ path: /offers/1234 });
Tuttavia devo anche chiamarlo tramite nav in questo modo
<router-link to="/offers">Offers</router-link>
Il offers
componente accetta l'elica
props: ['member'],
E componente utilizzato come tale
<Offers :offers="data" :member="member"></Offers>
Ora il brutto modo in cui sono riuscito a farlo funzionare è duplicare il percorso e fare in modo che uno di loro non prenda oggetti di scena:
{
path: '/offers',
component: Offers,
name: 'offers',
props: false,
meta: {
guest: false,
needsAuth: true
}
},
In realtà funziona, ma non sono soddisfatto - anche in modalità dev vuejs mi avvisa [vue-router] Duplicate named routes definition: { name: "offers", path: "/offers" }
Sicuramente c'è un modo per fare param facoltativo nella chiamata del componente :member="member"
?