У меня проблема с получением строки запроса URL из компонента. Я пытаюсь реализовать это https://router.vuejs.org/guide/essentials/passing-props.html#function-mode, чтобы я мог передать запрос в качестве опоры. Я не очень часто использовал строки запроса, и я склонен использовать параметры, но в этом случае мне нужна строка запроса. Проблема, с которой я столкнулся, заключается в том, что mounted()
не имеет доступа к запросу.
Ниже приведен базовый пример того, что я не могу получить:
URL = http://localhost:8080/?q=This%20is%20my%20query
Router.js
{
path: '/',
component: () => import('./App.vue'),
props: (route) => ({ query: route.query.q })
}
App.vue (выдержка)
<template>
<div id="app">
1.{{ $route.query }}
2.{{ query }}
<searchResults class="results"/>
</div>
</template>
props: ['query'],
mounted () {
console.log(this.query)
console.log(this.$route.query)
},
В приведенном выше коде при посещении соответствующего URL происходит следующее:
console.log(this.query) = undefined
console.log(this.$route.query) = undefined
В шаблоне выводится следующее:
1.{}
2.
Что мне нужно сделать, чтобы правильно передать запрос как реквизит?