#vue.js #axios #nuxt.js #meta-tags
#vue.js #axios #nuxt.js #мета-теги
Вопрос:
Итак, я использую Nuxt и Axios для сбора данных JSON через route.params.id все работает нормально, но теперь мне нужно перенести некоторые из этих данных в мой мета-заголовок, и я не могу понять, как это сделать, см. Неудачный пример ниже.
страницы / сообщения /_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
})
}
}
}
Ответ №1:
Я думаю, что это не meta_title
но title
. дополнительная ссылка: