您现在的位置是:网站首页> 编程资料编程资料
Vue3项目中的hooks的使用教程_vue.js_
2023-05-24
313人已围观
简介 Vue3项目中的hooks的使用教程_vue.js_
今天我们稍微说一下 vue3 项目中的 hooks 的使用,其实这个 hooks 呢是和 vue2 当中的 mixin 是类似的,学习过 vue2 的小伙伴一定对 mixin 一定比较熟悉,就算没用过也一定了解过,也就是混入,通过 mixin 混入来分发 vue 组件中的可复用功能。一个混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被“混合”进入该组件本身的选项。而 vue2 的 hooks 函数与 mixin 混入的区别,主要是 hooks 是函数。
hooks 特点
vue3 中的 hooks 函数相当于 vue2 里面的 mixin 混入,不同在于 hooks 是函数。
vue3 中的 hooks 函数可以提高代码的复用性,能够在不同的组件当中都利用 hooks 函数。
hooks 函数可以与 mixin 连用,但是不建议。
hooks 基本使用
首先我们不管 hooks 哈,我们先写一个小功能,就是获取页面的宽高值,这个是讲解 hooks 的常用案例了,都是老演员了,我们也来整一个。
我不啰嗦了,直接写代码吧。
hooks
页面宽度: {{screen.width}}
页面高度: {{screen.height}}
获取页面的宽高
上面的代码其实很简单了就,有两个标签,显示可视页面的长度和宽度,然后有一个按钮获取最新的长宽进行显示。

这个功能是可以顺利实现的哈。如果我们需要在另一个页面也想实现这个功能的话,也很简单,在直接把上面的代码复制一下到另一个需要实现的页面就可以了。
但是
有没有发现一个问题,就是一个页面需要就复制一遍,一个页面需要就复制一遍,如果有一百个页面就复制一百遍,代码一两行还好,如果是一个超级庞大的工具类,那么在像这样实现的话,是不是就过于复杂了,而且还不好实现,那这个问题怎么解决呢?啊哈哈哈哈,没错了宝子们,就是 hooks 。
我们针对上面的案例,我们使用 hooks 简单的实现一下。
首先,我们在 src 文件夹下创建一个 hooks 文件夹。

在 hooks 文件夹下创建一个文件,名字就叫做 useScreenWh.js 文件

接下来就很简单了,我们把获取可视化界面的代码放进这个 js 文件,然后导出去,给其他页面使用就可以了。
import { reactive } from 'vue' export default function () { // 导出一个默认方法 // 创建一个对象,保存宽度和高度值 const screen = reactive({ width: 0, height: 0 }) // 创建一个方法,获取可视化界面的宽度和高度值 const getWH = () => { screen.width = document.documentElement.clientWidth screen.height = document.documentElement.clientHeight } return { screen, getWH } // 方法返回宽高值 } 然后在需要使用 hooks 的文件引入就可以使用了。
hooks
页面宽度: {{screen.width}}
页面高度: {{screen.height}}
获取页面的宽高
好了,我们保存看一下效果。

和之前是完全一样的。
到此这篇关于Vue3项目中的hooks的使用教程的文章就介绍到这了,更多相关Vue3 hooks内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
相关内容
- Vuei18n 在数组中的使用方式_vue.js_
- vue中关于@media媒体查询的使用_vue.js_
- 在 React Native 中使用 CSS Modules的配置方法_React_
- 关于vue-tree-chart简单的使用_vue.js_
- element中的el-upload附件上传与附件回显_vue.js_
- 详解Vue3 父组件调用子组件方法($refs 在setup()、<script setup> 中使用)_vue.js_
- Vue + element-ui 背景图片设置方式_vue.js_
- element-ui中页面缩放时table表格内容错位的解决_vue.js_
- vue静态界面之左二级菜单右表单表格的实例代码_vue.js_
- 关于Element-ui中Table表格无法显示的问题及解决_vue.js_
