特定のコンポーネントにルーティングする方法は2つあります。1つはパラメーターあり、もう1つはパラメーターなしです。オプションのパラメーターを検索しましたが、どういうわけか多くの情報を見つけることができません。
だから私のルート:
{
path: '/offers/:member',
component: Offers,
name: 'offers',
props: true,
meta: {
guest: false,
needsAuth: true
}
},
プログラムでparamを使用して呼び出すと、すべて問題ありません
this.$router.push({ path: /offers/1234 });
ただし、このようにナビで呼び出す必要もあります
<router-link to="/offers">Offers</router-link>
offers
コンポーネントは、小道具を受け入れます
props: ['member'],
そのように使用されるコンポーネント
<Offers :offers="data" :member="member"></Offers>
さて、私がうまく機能させるための醜い方法は、ルートを複製して、そのうちの1つを小道具を使わないようにすることです。
{
path: '/offers',
component: Offers,
name: 'offers',
props: false,
meta: {
guest: false,
needsAuth: true
}
},
それは実際に機能しますが、私はそれに満足していません-開発モードでもvuejsは私に警告しています [vue-router] Duplicate named routes definition: { name: "offers", path: "/offers" }
コンポーネントの呼び出しでオプションのパラメータを実行する方法は確かにあります:member="member"
か?