当前位置: 首页 > news >正文

vue3自定义hooks

获取dom的id属性

index.ts

import { onMounted } from "vue"
type option = {el: string
}export default function(option:option):Promise<{name: string}> {return new Promise((resolve)=>{onMounted(()=>{const dom:HTMLElement = document.querySelector(option.el) as HTMLDivElement;resolve({name: dom.id})})})
}

使用

<template><div class="ad"></div>
</template>
<script setup lang="ts">
//hooks 的工具库 vueuse
import getId from './hooks/index';
getId({el: '.ad'
}).then(res => {console.log(res);
})
</script>
获取dom的大小
function useResize(el: HTMLElement, callback: (cr: DOMRectReadOnly, resize: ResizeObserver) => void) {let resize: ResizeObserverresize = new ResizeObserver((entries) => {for (let entry of entries) {const cr = entry.contentRect;callback(cr, resize)}});resize.observe(el)
}export default useResize

使用

onMounted(() => {useResize(document.querySelector('#ad') as HTMLElement, (e) => {console.log(e);})
})

http://www.lryc.cn/news/236985.html

相关文章:

  • Consistency Models 阅读笔记
  • 杭电oj 2034 人见人爱A-B C语言
  • springboot(ssm大学生成绩管理系统 成绩管理平台Java(codeLW)
  • SOME/IP 协议介绍(五)指南
  • Python调用企微机器人: 发送常用格式汇总
  • 论文阅读——DiffusionDet
  • elmenetui表格二次封装包含查询框和分页
  • 【机器学习Python实战】线性回归
  • 做外贸这么久,为什么一直做不好?
  • IPv4数据报格式
  • 搭建网关服务器实现DHCP自动分配、HTTP服务和免密登录
  • 【18年扬大真题】给定有m个整数的递增有序数组a和有n个整数的递减有序数组b,将a数组和b数组归并为递增有序的数组c
  • 图片叠加_图片压缩
  • Mybatis-Plus《学习笔记 22版尚硅谷 》——感谢【尚硅谷】官方文档
  • git安装后报git: ‘remote-https‘ is not a git command. See ‘git --help‘.
  • 场景交互与场景漫游-交运算与对象选取(8-1)
  • Vue中动态Class实战
  • B站短视频如何去水印?一键解析下载B站视频!
  • 最大子段和(分治法+动态规划法)
  • 内置函数和消息传递API
  • 不标年份的葡萄酒质量好吗?
  • 2023年【高处安装、维护、拆除】模拟考试题及高处安装、维护、拆除模拟考试题库
  • 简单模拟 Spring 创建的动态代理类(解释一种@Transactional事务失效的场景)
  • 万户OA upload任意文件上传漏洞复现
  • 如何写好一篇软文?怎样写软文比较有吸引力?
  • 从0开始学习JavaScript--JavaScript中的对象
  • 【LeetCode刷题】--7.整数反转
  • Genio 500_MT8385安卓核心板:功能强大且高效
  • idea导入javaweb变成灰色
  • SpringBoot集成Memcached