从参数创建 URL 并设置 Vue.js Vuex 状态

Creating a URL & setting Vue.js Vuex state from its parameters

我在 Vue.js 中内置了一个 SPA,它允许用户输入多个值来创建类似菜谱的内容。所有这些值都存储在 Vuex 状态中。我希望能够使用用户输入的状态值创建一个 URL,以便其他用户可以使用已输入的这些值加载应用程序。本质上,我想让用户通过分享 URL.

来分享他们在我的应用中创建的食谱

我在想象一个 "share" 按钮,它将创建的 URL 复制到用户的剪贴板,然后他们可以在社交媒体或其他任何地方 post。然后当有人访问 link 时,他们会转到我的应用程序,vuex 状态值将自动更新为 URL.

中找到的参数值

实现此功能的最佳方法是什么? vue-router 可以做到这一点吗?

如果我理解正确的话,vue-router 应该就是这样做的。

查看他们发送用户 ID 的文档。您可以传递任意数量的参数。

https://router.vuejs.org/en/essentials/dynamic-matching.html

注意:您可以考虑使用路由器重建应用程序路径。

使用 vue-router 提供的 $route.query 属性。

通过您的 URL 传递参数,例如 http://example.com/#/?amount=10 并使用 this.$route.query.amount 访问它们。

在主要组件的 mounted() 方法中更新您的 vuex 商店。

Official Documentation for the Route object