页面刷新时丢失 router.params

bli*_*ick 5 vue.js vue-router vuejs2

我遇到了 vue-router 的问题。
我在主页上得到了一个帖子列表。当我单击其中之一时,它会重定向到帖子页面,例如:

<router-link :to="{ name: 'article', params: {id: article.id, slug: article.slug } }"></router-link>

一切正常,我可以this.$route.params.id在 getter 中检索正确文章的数据。

我的问题:当我在文章页面上重新加载时,this.$route.params.id未定义,这会导致整个应用程序崩溃。

router.params尽管页面重新加载,我该如何保存?

Mat*_*ich 3

您使用什么后端?您需要在路由器上启用history mode,并在后端 Web 服务器上进行一些额外的配置更改。请参阅此链接,了解您需要进行的其他服务器端配置更改才能正常工作。

另外,请在使用时注意此 404 警告history mode

编辑:您可以尝试这样的操作,因为 ID 仍然保留在 URL 中:从MIKE AXLE中查找解决方案

我不知道其他人是否面临同样的问题,但我在刷新时获取路由参数时遇到问题。我试图获取的路由参数是一个 ID 号,我使用该 ID 来获取数据并填充页面。我发现(通过许多控制台日志)当我刷新时,数字变成了字符串,这就是页面无法工作的原因。我整理了一下,但在使用之前将 ID 转换为数字:

号码($route.params.id)