【发布时间】:2020-05-05 13:03:36
【问题描述】:
这是一个关于 NUXT 和 Vuex 的问题。我想在我的动态 (_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 时,它确实会转到_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>
【问题讨论】: