@FreeBa

Как передать параметр из router-link в однофайловый компонент в vue.js?

Есть линк вида
<router-link :to="{ path: '/test', query: { parameter1: 'TEST'} }">Тест</router-link>

Ссылка на компонент
var router = new VueRouter({
  routes: [
    { path: '/test', component: TestComponent, props: String }
  ]
})

Сам компонент
<template>
  <div>{{ parameter1 }}</div> 
</template>

<script>
  module.exports = {
    props: ['parameter1'],
    created: function(){
              console.log(parameter1) //not defined
          } 
  }
</script>


Т.е. параметр не передается в компонент, что я делаю не так?
  • Вопрос задан
  • 1748 просмотров
Пригласить эксперта
Ответы на вопрос 2
@FreeBa Автор вопроса
Сделал через $route - просто получая параметры из адресной строки. Но чувствую - это не лучшее решение.
Ответ написан
Комментировать
no4ch
@no4ch
Веб-разработчик
С помощью vue-router:
ссылка:
/link?q=value
После объявления компонента, адреса и тп:
props: (route) => ({ query: route.query }) - передать все входящие параметры
props: (route) => ({ query: route.query.q }) - если ожидаем конкретный

Пример в офф. документации
https://router.vuejs.org/ru/guide/essentials/passi...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы