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('测试标题')
相关推荐
大哥,带带弟弟6 分钟前
Grafana 前端嵌入与 JWT 鉴权实战
前端·grafana
小小小小宇7 分钟前
前端 V8 引擎垃圾回收机制与内存问题排查
前端
前端老石人18 分钟前
CSS 值定义语法
前端·css
sheeta199829 分钟前
Vue 前端基础笔记
前端·vue.js·笔记
小小小小宇29 分钟前
GitLab + GitLab Runner + Qiankun 微前端 + Nginx + Node 中间件 前端开发机从零搭建 CI/CD 全流程
前端
前端那点事33 分钟前
别再写垃圾组件!Vue3 如何设计「真正可复用」的高质量通用组件
前端·vue.js
卷帘依旧36 分钟前
JavaScript 中的 Symbol
前端·javascript
老王以为40 分钟前
Claude Code 从 GUI 到 TUI:开发者界面的范式回归
前端·人工智能·全栈
JYeontu41 分钟前
正方体翻滚Loading 2.0
前端·javascript·css
llq_35043 分钟前
React 组件处理 Props
前端