vue对seo不是很友好,需要添加配置及实现方案:具体内容如下---
https://segmentfault.com/a/1190000019623624
![](https://img.haomeiwen.com/i17957899/5bc0bac8116623fb.png)
在index.html内添加title,meta。
![](https://img.haomeiwen.com/i17957899/ede6defcbb919f4a.png)
在路由内添加title,content配置
![](https://img.haomeiwen.com/i17957899/b5d98a58bd5b2f63.png)
若添加if判断,在created内修改样式。
![](https://img.haomeiwen.com/i17957899/576d2a72d89ba0e0.png)
添加拦截器
router.beforeEach((to, from, next) => {
/* 路由发生变化修改页面meta */
console.log(to.meta.content)
if(to.meta.content){
let head = document.getElementsByTagName('head');
let meta = document.createElement('meta');
document.querySelector('meta[name="keywords"]').setAttribute('content', to.meta.content.keywords)
document.querySelector('meta[name="description"]').setAttribute('content', to.meta.content.description)
meta.content = to.meta.content;
head[0].appendChild(meta)
}
/* 路由发生变化修改页面title */
if (to.meta.title) {
document.title = to.meta.title
}
/*当进行页面跳转时定位在页面顶部*/
// chrome
document.body.scrollTop = 0
// firefox
document.documentElement.scrollTop = 0
// safari
window.pageYOffset = 0
next()
})
网友评论