web-dev-qa-db-ja.com

vue-routerの名前とパラメータでルートを取得します

Vue with vue-routerを使用しています。リストビューの製品アイテムの場合、url属性を製品のパスに設定してJSON-LNアノテーションを生成したいと思います詳細図。

this.$route.pathを使用して現在のルートのパスを取得できることはわかっていますが、次のようにレンダリングされるので、個別のルートパスを取得する方法はありますか

<router-link :to={name: 'ProductDetail', params: {id: some_id, slug: some_slug}}></router-link>

ルートのパスを別の場所に挿入するには?

11
Till Kolter

ルーターインスタンスのresolveメソッド を探しています。

<router-link/>で使用されているのと同じ形式の場所を指定すると、次の解決されたプロパティを持つオブジェクトを返します。

{
  location: Location;
  route: Route;
  href: string;
}

あなたの場合、あなたはこのようなことをしてURLを取得することができます:

let props = this.$router.resolve({ 
  name: 'ProductDetail',
  params: { id: some_id, slug: some_slug },
});

return props.href;
25
thanksd