我正在使用Vue和vue-router。对于列表视图中的产品项,我想生成JSON-LN注释,并将<ListView x:Name="lv">
<ListView.Resources>
<local:IndexConverter x:Key="IndexConverter" />
</ListView.Resources>
<ListView.View>
<GridView x:Name="gv">
<GridView.Columns>
<GridViewColumn>
<GridViewColumn.Header>
<GridViewColumnHeader Padding="2,2,2,0" VerticalContentAlignment="Bottom" ClickMode="Press" />
</GridViewColumn.Header>
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListViewItem}},
Converter={StaticResource IndexConverter}}" FontWeight="Bold" Tag="0" Loaded="TextBlock_Loaded" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
属性设置为产品详细信息视图的路径。
我知道我可以使用url
来获取当前路径的路径,但有没有办法获得一个不同的路径路径,因为它将使用
this.$route.path
在其他地方注入路径的路径?
答案 0 :(得分:18)
您正在寻找Router instance's resolve
method:
给定与
<router-link/>
中使用的形式相同的位置,返回具有以下已解析属性的对象:{ location: Location; route: Route; href: string; }
在你的情况下,你可以做这样的事情来获取网址:
let props = this.$router.resolve({
name: 'ProductDetail',
params: { id: some_id, slug: some_slug },
});
return props.href;