小编ico*_*uel的帖子

如何处理Vue Router中的fragment GET参数?

在使用 Web 应用程序流尝试Gitlab 的 OAuth的后端实现之后,我正在我的 Vue 前端尝试隐式授予。

API发给我的访问码是fragment url参数格式。这意味着它使用哈希符号#foo=bar&moo=var而不是?foo=bar&moo=var与默认 Vue Router 配置冲突的标准。

努力后的历史模式在Vue的路由器,它dosent使用#他的网址,我可以访问Vue的路由器与参数$route.hash。我目前的问题是我必须自己拆分和修剪参数,如下所示:

const params = this.$route.hash.split('&').map(part => part.replace(/#/, ''));
const parsedParams = {};
params.forEach(param => {
  const parts = param.split('=');
  parsedParams[parts[0]] = parts[1];
});
Run Code Online (Sandbox Code Playgroud)

哪个输出 { foo: "bar", moo: "var" }

有没有更好或更标准的方法来处理 VueRouter 中的片段参数?如果没有,在 Vue 之外是否有标准的解决方案?

oauth-2.0 gitlab vue.js vue-router

4
推荐指数
1
解决办法
2706
查看次数

标签 统计

gitlab ×1

oauth-2.0 ×1

vue-router ×1

vue.js ×1