vue3 自定义网站title的hooks

在开发网页的时候会遇到,每个页面需要有自己的标题的需求,这样的话每个页面都需要写重复的代码。

通过hooks封装之后,页面上只需要一行代码就能搞定。

具体实现代码如下:

封装的title hooks

javascript 复制代码
import { ref,watchEffect,onUnmounted } from 'vue'

export function useTitle(title:string,restoreOnUnMount = true){
    const cTitle = document.title;
    const titleRef = ref(title);
    watchEffect(()=>{
        document.title = titleRef.vaule;
    })
    if(restoreOnUnMount){
        onUnmounted(() => {
            document.title = cTitle;
        })
    }
    const setTitle = (title:string) =>{
        titleRef.value = title;
    }
    return setTitle
}

在页面引入hooks,写下边代码

javascript 复制代码
const setTitle = useTitle('测试标题')
相关推荐
开开心心就好1 分钟前
办公软件卸载不干净?专用工具一键清残留
java·前端·人工智能·智能手机·kafka·excel·memcache
静默回滚16 分钟前
图片能显示,画进canvas却空白:像素面积上限
前端
补码缩写16 分钟前
canvas大图内存怎么算:宽×高×4只是第一份
前端
coding漫漫长路21 分钟前
img.decode()报错的图能画,load成功的却是空的
前端
不可能片场23 分钟前
AI视频首尾帧控制 用参考图定住镜头
前端·electron
修炼的dance28 分钟前
canvas最大能开多大:先看面积,再看导出格式
前端
付威202328 分钟前
Rust 所有权:看你的答对几道题?
javascript
西红柿炖牛腩35435 分钟前
Three.js 模型体积优化:Draco/Meshopt 压缩与 DRACOLoader 配置的 4 个步骤
javascript·3d·性能优化
薛一半40 分钟前
React-Redux核心原理与容器组件实战
前端·javascript·react.js
做运维的阿瑞40 分钟前
自连接、交叉连接与复杂 JOIN:一条问题链讲透
前端·数据库·mysql