nuxt实现获取数据动态设置标题、关键词、描述信息

seo对于网站的传播具有及其重要的作用,对于任何一个想要让更多人知道的网站来说。seo都是必不可少一项推广手段。

因此基于nuxt框架下,我们要如何动态实现seo的数据信息设置呢?如:标题、关键词、描述信息

在nuxt框架中提供了head属性,即可以在这里面配置css、标题、关键词、描述信息等操作。

head属性常规配置如下:

head: {
title: '六月初工具站', // 网站标题
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
{ hid: 'description', name: 'description', content: '此处是网站描述' },
{ hid: 'keywords', name: 'keywords', content: '此处是网站关键词' }
],
link: [
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
]
}

到这一步了,我们已经知道在哪里设置标题、关键词等信息。但要如何将这些信息进行动态的录入展示呢?

接下来就不得不提到nuxt提供的asyncData异步数据请求。

asyncData 方法会在组件(限于页面组件,页面组件就是写在 pages 中的组件)每次加载之前被调用。它可以在服务端或路由更新之前被调用。

async asyncData({app, params }) {
if(params.id){
const d = await app.$axios.get("/article/"+params.id)
return{
contentData:d.data.data
}
}
}
//head属性配置
head() {
return {
title: this.contentData.title,
meta: [
{ hid: 'description', name: 'description', content: this.contentData.introduct },
{ hid: 'keywords', name: 'keywords', content: this.contentData.keyword}
],
}
},
data() {
return {
contentData:{
title:'数据获取中',
introduct:' 六月初工具站分为PC端、微信小程序端、QQ小程序端,各个平台因为需求及各种因素的原因所呈现的结果也各不相同。',
keyword:'六月初工具站'
}
}
}

如此就完成了动态设置seo信息数据的操作流程。

六月初字帖坊小程序 你想要的字帖模板及工具,这里都有!