nuxt单页面seo优化

1.下载axios

npm i @nuxtjs/axios -s

2. 在nuxt.config.js中配置axios

modules: [
      '@nuxtjs/axios',
  ],

 

此时, 就可以在组件中使用

async asyncData({$axios}) {
  let { res } = await $axios.get(`https://xxx.com/api/xxx`)
  console.log(res)    
 }
import Vue from 'vue'
//混入methods

Vue.mixin({
  methods:{
    $seo(title,content,payload = []){
      return {
        title,
        meta:[{
          hid:'description',//这里写原先的hid避免相互覆盖,
          name:'keywords',
          content,

        }].concat(payload)
      }
    }
  }
})

在plugins里创建mixins.js

import Vue from 'vue'
//混入methods

Vue.mixin({
  methods:{
    $seo(title,content,payload = []){
      return {
        title,
        meta:[{
          hid:'description',//这里写原先的hid避免相互覆盖,
          name:'keywords',
          content,

        }].concat(payload)
      }
    }
  }
})

然后在页面里面使用

 async asyncData({$axios}) {
      // let data = {token:'9b49f0312850415e99fe5b02b4480632',rows:1000}
      return await $axios.post('这里是地址').then(
        res =>({data:res.rows[0]})
        // res => {
        //   console.log('加载之前获取')
        //   console.log(res.rows[0])
        //
        // }
      )
},
head(){
      // console.log(this.data)
      return this.$seo(this.data.title, this.data.content,[{}])
    }


 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

栈狮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值