页面刷新时丢失router.pars

2022-03-28 vue.js vue-router vuejs2

我遇到VUE路由器问题。
我在主页上找到了一份帖子列表。当我点击其中一个时,它会重定向到帖子页面,如下所示:

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

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

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

如何在重新加载页面的情况下保存router.params


解决方案

您使用的是什么后台?您需要enable history mode on your router,并在后端Web服务器上进行一些额外的配置更改。Please refer to this link for the additional server side configuration changes您需要使其正常工作。

另外,please make note of this 404 caveat使用history mode..

编辑:您可以尝试something like this,因为ID保留在URL中:从Mike Axle查找解决方案

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

编号($route.params.id)

相关文章