0

ルートオブジェクト内のルートパラメータに直接アクセスする方法があるかどうか誰か教えてもらえますか?ルートオブジェクトに基づいて別のコンポーネントを要求する必要があります。

router.map({
  '/dashboard/*': {
    component: Home
  },
  '/dashboard/:module': {
    component: Module,
    subRoutes: {
      '/': {
        component: require('./components/'+this.$route.params.module+'.vue')
      },
      '/:tab': {
        component: require('./components/'+this.$route.params.tab+'.vue')
      }
    }
  }
});
4

2 に答える 2

3

ルーター構成で直接ルートパラメーターに応じて、1 つまたは別のコンポーネントを要求することはできません。代わりにできることは、ルート パラメーターに応じてコンポーネントまたは別のコンポーネントを使用するラッパー コンポーネントを作成することです。これは、ルート パラメーターが任意のコンポーネントからアクセスできるためです。

vue-router ドキュメントに書かれているように:

ルート オブジェクトは、vue-router 対応アプリのすべてのコンポーネントに this.$route として注入され、ルート遷移が実行されるたびに更新されます。

すべてのコンポーネントが現在のルートにアクセスできるため、次のthis.$routeようなことができます。

<template>
    <component-a v-if="$route.params.param1 === 'a'></component-a>
    <component-b v-if="$route.params.param1 === 'b'></component-b>
</template>
于 2016-09-29T09:07:40.157 に答える