vue router動的ルーティング設定パラメータオプションの問題

1634 ワード

日常的な作業では、一致したすべてのルーティングを1つのコンポーネントにマッピングする必要があります.
次のコードの効果を達成します.
pageとidを渡さないとuserデフォルトリストページにマッピングされます
pageとidを伝え、pageによって異なるページを表示します
に質問
デフォルトではpageパラメータとidパラメータは必須なので、パラメータを渡さないとデフォルトのルーティングに従ってホームページにジャンプします.

new Router({
  routes: [
    {
      path: '/user/:page/:id',
      name: 'User',
      component: () => import('pages/user')
    },
    {
      path: '*',
      redirect: '/home'
    }
  ]
})

解決策
パラメータ構成をオプションに変更path: '/user/:page?/:id?'
ps:次にvue-router動的追加ルーティングを見てみましょう
動的にルーティングを追加するには、権限管理に使用できます.ログイン後、サーバー側は権限メニューに戻り、フロントエンドは動的にルーティングを追加し、設定メニュー
1、vue-routerは、router.addRoutes(routes)により多くのルーティングルールを動的に追加する方法がある.パラメータはroutesオプションの要件を満たす配列でなければなりません.
使用方法

this.$router.options.routes[0].children.push({//    
 name:'list',
 path: 'list',
 component: resolve => require(['../template/list.vue'], resolve)//    require   
});
this.$router.addRoutes(this.$router.options.routes);//  addRoutes    

マイルーティングファイル:

export default new Router({
 routes: [
  {
   path: '/',
 
   component: index,
  },
  {
   path: '/login',
   name: 'login',
   component: login
  }
 ]

まとめ
以上述べたのは、編集者が紹介したvue routerダイナミックルーティング設定パラメータのオプションの問題で、皆さんに役に立つことを望んでいます.もし皆さんが何か疑問があれば、私にメッセージを送ってください.編集者はすぐに皆さんに返事します.