vue2 单文件组件加入浏览器的title和ico的方法

加入title:

代码:

复制代码
const router = createRouter({
  history: createWebHistory(process.env.BASE_URL),
  routes,
});

// 在 router/index.js 的导出前添加
router.beforeEach((to, from, next) => {
  if (to.meta.title) {
    document.title = to.meta.title;
    
  }
  next();
});

加入ico代码:

复制代码
<template>
  <div>
    <!-- 组件内容 -->
  </div>
</template>

<script>
export default {
  name: 'MyComponent',
  mounted() {
    this.changeFavicon('/new-favicon.ico')
  },
  
  methods: {
    changeFavicon(iconUrl) {
      // 找到现有的 favicon 链接
      let link = document.querySelector("link[rel*='icon']") || document.createElement('link')
      
      // 设置属性
      link.type = 'image/x-icon'
      link.rel = 'shortcut icon'
      link.href = iconUrl
      
      // 添加到 head
      document.getElementsByTagName('head')[0].appendChild(link)
    }
  },
  
  // 离开时恢复原图标
  beforeDestroy() {
    this.changeFavicon('/original-favicon.ico')
  }
}
</script>

解释:

相关推荐
用户693717500138414 分钟前
Google 正在“收紧侧加载”:陌生 APK 安装或需等待 24 小时
android·前端
蓝帆傲亦18 分钟前
Web 前端搜索文字高亮实现方法汇总
前端
用户693717500138419 分钟前
Room 3.0:这次不是升级,是重来
android·前端·google
漫随流水2 小时前
旅游推荐系统(view.py)
前端·数据库·python·旅游
踩着两条虫3 小时前
VTJ.PRO 核心架构全公开!从设计稿到代码,揭秘AI智能体如何“听懂人话”
前端·vue.js·ai编程
jzlhll1234 小时前
kotlin Flow first() last()总结
开发语言·前端·kotlin
用头发抵命4 小时前
Vue 3 中优雅地集成 Video.js 播放器:从组件封装到功能定制
开发语言·javascript·ecmascript
蓝冰凌5 小时前
Vue 3 中 defineExpose 的行为【defineExpose暴露ref变量】详解:自动解包、响应性与实际使用
前端·javascript·vue.js
奔跑的呱呱牛5 小时前
generate-route-vue基于文件系统的 Vue Router 动态路由生成工具
前端·javascript·vue.js