因此,我正在使用Nuxt和Axios通过route.params.id捕获JSON数据,但一切正常,但是现在我需要将其中一些数据放入meta标头中,并且无法解决该问题,请参阅下面的失败示例。
页面/帖子/_id/_slug.vue
<template>
<div id="content" class="block float-left w-full pt-32">
<div class="block text-black mx-auto my-0 w-10/12" v-for="post in getData($route.params.id)" :key="post.id">
<!-- column 1 -->
<main class="block float-left md:pr-16 w-full md:w-9/12">
<h1 class="block float-left w-full text-black mb-8 uppercase title">
<span class="leading-none font-extrabold text-xl md:text-3xl">{{post.loc}}</span><br/>
<span class="leading-none font-bold text-2xl md:text-5xl">{{post.serv}}</span>
</h1>
<div class="content block float-left w-full" v-html="post.cont" />
</main>
<!-- column 1 -->
</div>
</div>
</template>
这很好
import json from '~/static/mpc-data.json'
export default {
这是哪里出错了
head () {
return {
meta_title: post.loc + post.serv,
meta: [
{ hid: 'title', name: 'title', content: this.meta_title },
{ hid: 'og:title', name: 'og:title', content: this.meta_title }
]
}
}
其余部分-一切正常
data () {
return {
posts: json,
title: ''
}
},
methods: {
getData (id) {
const data = this.posts
return data.filter((item) => {
return item.id === id
})
},
getArea (loc) {
const data = this.posts
return data.filter((item) => {
return item.loc === loc
})
}
}
}