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('测试标题')
相关推荐
酷酷的鱼5 分钟前
Expo Router vs 原生React Native 完全对比指南
javascript·react native·react.js
桃子叔叔7 分钟前
react-wavesurfer录音组件2:前端如何处理后端返回的仅Blob字段
前端·react.js·状态模式
nie_xl10 分钟前
VS/TRAE中设置本地maven地址的方法
运维·服务器·前端
烧饼Fighting15 分钟前
统信UOS操作系统离线安装ffmpeg
开发语言·javascript·ffmpeg
LV技术派17 分钟前
适合很多公司和团队的 AI Coding 落地范式(三)
前端·ai编程·cursor
一只小bit18 分钟前
Qt 对话框全方面详解,包含示例与解析
前端·c++·qt·cpp·页面
m0_7482546619 分钟前
Angular 2 模板语法概述
前端·javascript·angular.js
专注VB编程开发20年19 分钟前
EDGE估计没有switch到frame的做法
前端·edge·vba
_oP_i27 分钟前
Chrome浏览器自动下载的AI模型文件
前端·chrome