Я хотел бы получить доступ к параметрам URL в методологии Vue, кроме использования window.location.href и синтаксического анализа.

router / index.js

const router = new Router({
  mode: 'hash',
  routes: []
});

router.beforeEach((to, from, next) => {
/*
*WOULD LIKE TO ACCESS THE URL PARAMS HERE*
**to.query** is not working in hash mode.
*/
})
2
SatishV 8 Фев 2021 в 16:30

1 ответ

Лучший ответ

Код, который вы показали для регистрации параметров запроса, верен, поэтому существует проблема с маршрутом. Чтобы создать ссылку в шаблоне, используйте <router-link>:

<router-link to="/myroute?id=5"></router-link>

Для программной маршрутизации в скрипте используйте this.$router.push (или { {X1}}):

this.$router.push('/myroute?id=5');

Когда вы войдете в to.query, вы должны увидеть:

{ id: "5" }

Изменить : вы сообщили (в комментариях), что устанавливаете внешнюю ссылку на приложение.

Ссылка с внешнего сайта в режиме hash

http://localhost/#/?id=5

При внешней ссылке на сайт в режиме хеширования вы должны использовать хеш в URL-адресе, иначе запрос не будет зарегистрирован должным образом. Запрос должен следовать за хешем, но будет помещен перед ним, если хеш не используется.

0
shob 9 Фев 2021 в 07:27