Vue3 【仿 react 的 hook】封装 useTitle

简介: Vue3 【仿 react 的 hook】封装 useTitle

效果预览

  • 页码加载时,自动获取网页标题
  • 通过input输入框,可以实时改变网页标题

代码实现

index.vue

<template>
  <h1>网页的标题为: {{ titleRef }}</h1>
  <p>通过input输入框实时改变网页的标题 <input v-model="titleRef" /></p>
</template>

<script setup>
import useTitle from "./hooks/useTitle.js";

const titleRef = useTitle();
</script>

useTitle.js

import { ref, onMounted, watch } from "vue";

function useTitle() {
  let titleRef = ref("");
  onMounted(() => {
    titleRef.value = document.title;
  });

  watch(titleRef, (newVal, oldVal) => {
    if (newVal !== oldVal) {
      document.title = newVal;
    }
  });

  return titleRef;
}

export default useTitle;
目录
相关文章
|
10天前
|
前端开发 JavaScript 数据格式
react18【系列实用教程】Hooks (useState,useReducer,useRef,useEffect,useContext,useMemo,useCallback,自定义 Hook )
react18【系列实用教程】Hooks (useState,useReducer,useRef,useEffect,useContext,useMemo,useCallback,自定义 Hook )
17 1
|
12天前
|
前端开发
React useImperativeHandle Hook
【7月更文挑战第1天】React useImperativeHandle Hook
10 3
|
10天前
|
前端开发 API
Vue3 【仿 react 的 hook】封装 useLocation
Vue3 【仿 react 的 hook】封装 useLocation
9 0
|
11月前
|
前端开发
前端学习笔记202305学习笔记第二十九天-React keep alive原理之2
前端学习笔记202305学习笔记第二十九天-React keep alive原理之2
50 0
|
11月前
|
前端开发
前端学习笔记202306学习笔记第四十八天-react-admin marmelab之8
前端学习笔记202306学习笔记第四十八天-react-admin marmelab之7
35 0
|
2月前
|
前端开发 JavaScript
前端知识笔记(二十六)———React如何像Vue一样将css和js写在同一文件
前端知识笔记(二十六)———React如何像Vue一样将css和js写在同一文件
43 1
|
8月前
|
前端开发
前端笔记:React的form表单全部置空或者某个操作框置空的做法
在React框架前端开发中,经常会有弹出框的开发,涉及到弹出框,难免就会有表单。一般在关闭弹出框或者对表单联动时,往往都需要考虑对表单进行置空操作了。
66 0
|
11月前
|
Web App开发 前端开发 JavaScript
前端学习笔记202307学习笔记第五十七天-模拟面试笔记react-fiber解决了什么问题
前端学习笔记202307学习笔记第五十七天-模拟面试笔记react-fiber解决了什么问题
56 0
|
11月前
|
JavaScript 前端开发 调度
前端学习笔记202307学习笔记第五十七天-模拟面试笔记react-fiber和虚拟dom关系
前端学习笔记202307学习笔记第五十七天-模拟面试笔记react-fiber和虚拟dom关系
87 0
|
11月前
|
前端开发
前端学习笔记202305学习笔记第二十九天-React keep alive原理之1
前端学习笔记202305学习笔记第二十九天-React keep alive原理之1
36 0