如何防止我的 $router 参数在我到达 Vue.js 中的 $router url 目的地后消失?
How do I prevent my $router params from disappearing once I go to the $router url destination in Vue.js?
当我转到目标组件部分(下面复制和粘贴的代码片段)时,gameID 参数在浏览器中显示半秒钟然后消失,而 game_name 参数永久可见。我不确定如何使 gameID 参数持久化,以便我也可以在浏览器中永久显示它。
我的router/index.js文件
{
path: '/StreamersForGame/:game_name',
name: 'StreamersForGame',
component: StreamersForGame,
}
我在('methods:' 部分)
中使用 $router.push 命令
goToSpecificGameStreamsPage: function (gameID, gameName) {
this.$router.push({
name: 'StreamersForGame',
params: {
gameID: gameID,
game_name: gameName,
}
});
}
}
路由器链接目标组件模板部分
<template>
<div class="hello">
<h1>Streamers for '{{ $route.params.game_name }}'</h1>
<h2>GameID: {{ $route.params.gameID }}</h2>
</div>
</template>
因为 game_name 在你的路上 '/StreamersForGame/:game_name'
但是gameID不是。
所以你必须将它添加到你的路径中,或者你可以通过查询传递它:
this.$router.push({
name: 'StreamersForGame',
params: {
game_name: gameName,
},
query: {
gameID: gameID,
}
});
您可以像这样访问它:
$route.query.gameID
当我转到目标组件部分(下面复制和粘贴的代码片段)时,gameID 参数在浏览器中显示半秒钟然后消失,而 game_name 参数永久可见。我不确定如何使 gameID 参数持久化,以便我也可以在浏览器中永久显示它。
我的router/index.js文件
{
path: '/StreamersForGame/:game_name',
name: 'StreamersForGame',
component: StreamersForGame,
}
我在('methods:' 部分)
中使用 $router.push 命令goToSpecificGameStreamsPage: function (gameID, gameName) {
this.$router.push({
name: 'StreamersForGame',
params: {
gameID: gameID,
game_name: gameName,
}
});
}
}
路由器链接目标组件模板部分
<template>
<div class="hello">
<h1>Streamers for '{{ $route.params.game_name }}'</h1>
<h2>GameID: {{ $route.params.gameID }}</h2>
</div>
</template>
因为 game_name 在你的路上 '/StreamersForGame/:game_name'
但是gameID不是。
所以你必须将它添加到你的路径中,或者你可以通过查询传递它:
this.$router.push({
name: 'StreamersForGame',
params: {
game_name: gameName,
},
query: {
gameID: gameID,
}
});
您可以像这样访问它:
$route.query.gameID