vue3.2.13 script setup 下无法设置seo tdk

文章讨论了在Vue3的旧版本中可以使用vue-meta-info来管理页面的SEO元信息,但在新版本中该方法不再适用。作者指出Vue3.2已移除beforeCreate钩子,导致vue-meta-info无法正常工作,并询问是否有新的解决方案或插件用于设置SEO元数据。
摘要由CSDN通过智能技术生成

vue-meta-info  原先的vue3 下可以用

 但是在新版本下就无法使用了

<script setup>

const  metaInfo= ()=> {  

      return {

        //metaInfo:{

      

            title: 'title',

            meta: [

              {  vmid: 'keywords',name: 'keywords', content: 'keywords' },

              {  vmid: 'description',name: 'description', content: 'description' }

            ]

          }

        //}

    }

 请问最新版有新的seo meta 设置插件吗 

var VueMetaInfo = function () {

  };

  VueMetaInfo.install = function (Vue) {

    Vue.mixin({

      beforeCreate: function beforeCreate() {

        var this$1 = this;

        // 如果组件内设置了 vueMeta 信息

        if (this.$options[VUE_META_KEY_NAME] !== undefined) {

          var type = typeof this.$options[VUE_META_KEY_NAME];

          // 区分是否存在 vueMeta 信息

          this._hasMetaInfo = true;

          // 判断组件内是否存在 computed 对象

          if (typeof this.$options.computed === 'undefined') {

            this.$options.computed = {};

          }

          // 为组件添加 computed 对象并返回 vueMeta 信息

          this.$options.computed.$metaInfo = type === 'function' ? this.$options[VUE_META_KEY_NAME] :

            function () { return this$1.$options[VUE_META_KEY_NAME]; };

        }

      },

      created: function created () {

        renderServerMetaInfo(this.$ssrContext, this.$metaInfo);

      },

      beforeMount: function beforeMount() {

        // 在组件挂载到 dom 之前更新 meta 信息

        if (this._hasMetaInfo) {

          updateMetaInfo(this.$metaInfo);

        }

      },

      mounted: function mounted() {

        var this$1 = this;

        // dom 挂载之后 继续监听 meta 信息。如果发生变化,继续更新

        if (this._hasMetaInfo) {

          this.$watch('$metaInfo', function () {

            updateMetaInfo(this$1.$metaInfo);

          });

        }

      },

      activated: function activated() {

        if (this._hasMetaInfo) {

          // keep-alive 组件激活时调用

          updateMetaInfo(this.$metaInfo);

        }

      },

      deactivated: function deactivated() {

        if (this._hasMetaInfo) {

          // keep-alive 组件停用时调用。

          updateMetaInfo(this.$metaInfo);

        }

      }

    });

  };

vue 3.2 已经没有了 beforeCreate 方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值