vue nuxt.js head()设置SEO页面三要素无效的解决办法

本来nuxt自带了head() 方法,可以设置路由页面的title, content, keywords, 但是我们项目不知道为什么,有些页面源代码就生成了meta标签,而有些页面就没有,而且发现生成了的页面meta标签在加载css文件之前,没有生成的在加载css文件之后

这个是生成了的
在这里插入图片描述

这个是没生成的

在这里插入图片描述

虽然找到了一点不同,但是还是没找到原因,如果有知道原因的兄弟可以告诉我一声, 虽然我不知道原因,但是我找到了解决办法

解决办法: nuxt中有一个asyncData方法,可以在里面设置本页面的title,content,keywords

async asyncData({ app, req, query, params }) {
    app.head.title = "";
    app.head.meta = [
        {
          name: "keywords",
          content: "",
        },
        {
          name: "description",
          content:
            "",
        },
      ];
 }

这样源代码就可以生成 meta 标签了

Nuxt.js 是一个基于 Vue.js 的通用应用框架,它可以让你更快速、更轻松地开发应用程序。Nuxt.js 3 是 Nuxt.js 的最新版本,它提供了全新的架构和 API,具有更好的性能和更好的扩展性。下面是关于 Nuxt.js 3 中的 SEO 优化配置的介绍。 Nuxt.js 3 中的 SEO 优化配置主要是通过 nuxt.config.js 文件来进行配置。下面是一些常用的 SEO 配置项: 1. head 标签配置:可以通过配置 head 对象来设置 head 标签中的元信息,如 title、meta、link 等。 2. router 配置:可以通过配置 router 对象来设置路由相关的信息,如路由的 base、mode 等。 3. generate 配置:可以通过配置 generate 对象来设置生成静态站点的相关信息,如生成路径、页面列表等。 4. sitemap 配置:可以通过配置 sitemap 对象来生成站点地图。 5. robots 配置:可以通过配置 robots 对象来生成 robots.txt 文件。 6. canonical 配置:可以通过配置 canonical 对象来设置页面的 canonical URL。 下面是一个简单的 nuxt.config.js 文件的 SEO 配置示例: ``` export default { head: { title: 'My website', meta: [ { charset: 'utf-8' }, { name: 'viewport', content: 'width=device-width, initial-scale=1' } ], link: [ { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' } ] }, router: { base: '/my-website/' }, generate: { dir: 'dist/my-website' }, sitemap: { hostname: 'https://www.my-website.com', gzip: true }, robots: { UserAgent: '*', Disallow: '/' }, canonical: { baseURL: 'https://www.my-website.com' } } ```
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值