其他分享
首页 > 其他分享> > vue3实现响应式切换地址栏favicon.ico图标

vue3实现响应式切换地址栏favicon.ico图标

作者:互联网

利用响应式来进行图标的动态更新

function useFavicon(newIcon?:string){
  const favicon = ref(newIcon)
  function update(icon){
  	//匹配头部关于icon的link
    document.head.querySelectorAll('Link[rel*="icon"]')
    .forEach(el => el.href = icon)
  }
	
  const reset = ()=>favicon.value = '/favicon.ico'
  //当响应式变量favicon发生改变时触发更新
  watch(favicon,(i)=>{
      update(i)
  })
  //将响应式变量暴露给外部,以便修改
  return {favicon,reset}
}
<script setup lang="ts">
import ico from './assets/test.ico'

const {favicon,reset} = useFavicon();

const loading = ()=>favicon.value = ico
</script>
<template>
	<div @click="loading">切换icon</div>
</template>

标签:const,更新,favicon,响应,ico,地址栏,icon
来源: https://blog.csdn.net/weixin_44221214/article/details/121188745