это вопрос по NUXT и Vuex. Я хочу получить соответствующий элемент на моей динамической странице c (_id
).
У меня есть массив в моем состоянии:
export const state = () => ({
events: [
{ id: 1, name: 'Wordpress', price: 100 },
{ id: 2, name: 'VueJS', price: 200 },
{ id: 3, name: 'React', price: 300 },
{ id: 4, name: 'Angular', price: 500 },
{ id: 5, name: 'NodeJS', price: 5000 }
]
})
У меня есть EventList
компонент, который проходит через вышеуказанный массив следующим образом:
<template>
<div class="event-list">
<nuxt-link v-for="event in events" :key="event.id" :to="'/events/' + event.id">
<EventPreview
:id="event.id"
:name="event.name"
:price="event.price"
/>
</nuxt-link>
</div>
</template>
Однако, когда я нажимаю nuxt-link
, он делает go странице _id
, однако ... он не пропускает объект, по которому щелкнули.
Как мне перевести этот объект на страницу _id? Под объектом я имею в виду, например, { id: 1, name: 'Wordpress', price: 100 }
.
Если вам нужна дополнительная информация (помимо того, что указано ниже), пожалуйста, спросите.
Дополнительная информация выглядит следующим образом:
Код для EventPreview
компонента:
<template>
<div class="single-event">
<h1>Name: {{ name }}</h1>
<h1>Price: {{ price }}</h1>
</div>
</template>
<script>
export default {
name: 'EventPreview',
props: {
id: {
type: Number,
required: true
},
name: {
type: String,
required: true
},
price: {
type: Number,
required: true
}
}
}
</script>
_id
Код страницы:
<template>
<div class="event-id">
<EventPreview />
</div>
</template>
<script>
import EventPreview from '@/components/Event/EventPreview'
export default {
components: {
EventPreview
}
}
</script>