2017-04-22 11 views
3

これはvuejsで実装できるかどうかを尋ねたいので、基本的にコードはページ/テンプレートベースをparam urlにロードします。私はしばらくの間探していて、必要な結果を得ることができないか、間違ったキーワードを検索しているだけかもしれません。ルートに応じてコンポーネント/テンプレートをロードするvuejs

私のURLはこのようなものなので、私は自分のルートにURLを手動で宣言することはできません。なぜなら、データベースからフェッチするのは動的なためです。

path: '/user/page_type 

ありがとうございました!

export default { 
    mounted() { 
     if(this.$routes.params.page_type == "home"){ 
      // Load Homepage Here 
      // ../../../page/HomePage.vue 
     } 
     else if(this.$routes.params.page_type == "speaker"){ 
      // Load Speakerpage Here 
      // ../../../page/HomePage.vue 
     } 
     else if(this.$routes.params.page_type == 'html'){ 
      // Load HTML Page Here 
      // ../../../page/HtmlPage.vue 
     } 
    } 
} 

答えて

3

これは、公式のアドオンvue-routerでそのまま利用可能です。あなたのケースのための

ドキュメント:link

+0

私のシナリオでは、それがのparamsに基づいて異なるコンポーネントをレンダリングしますです。同じコンポーネントではない –

+0

あなたの/ user/componentに ''とスクリプトセット 'watch:{'$ route':{...' //router.vuejs.org/en/essentials/dynamic-matching.html(Params変更への反応)。メソッドgetComponentでは、目的のコンポーネント名を返すことができます。 – wostex

+0

これにはどのような例がありますか? 'わかりません。私が確認できるリンクをいくつか共有してもらえますか? –

関連する問題