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

uniapp开发:uniapp之vue3.2获取节点信息的差异

uniapp开发的时候,可能会有获取dom节点信息的需求,在uniapp的vue2.X编译模式中可以直接通过API const query = uni.createSelectorQuery().in(this);去获取相关的节点信息。在vue3.2+中这段代码是会报如下错误:

image

原因分析:

其实从这个错误是看不出什么原因,于是进一步思索。我们知道vue2.x中是在uni.createSelectorQuery()后缀了.in(this),但是在vue3.x的<script setup></setup>中的this就不好使了,压根儿就没有this这个东西了,所以报错大概就是这个this惹的祸,接下来做个验证。

验证分析:**

直接把代码中的.in(this)去掉

<template>
    <view class="myView" style="background-color: pink;" id="myView">我是方脑壳</view>
</template>
<script setup>
	const query = uni.createSelectorQuery();
	query.select('#myView').boundingClientRect(data => {
		console.log("得到布局位置信息:",data);
	}).exec();
</script>
<style>
	.myView {
		width: 100px;
		height: 100px;
	}
</style>

结果分析

上面验证中的打印结果:

{
    bottom: 121,
    dataset: {},
    height: 100,
    id: "myView",
    left: 0,
    right: 100,
    top: 21,
    width: 100
}

没有报错,而且打印出了正确的结果,证明原因分析是没问题的。只是在uniapp的官方API中还没有做相关的说明,所以可能一开始会进入误区导致有些功能不能实现。

所以在uniapp的vue3.2+开发中,获取节点信息等相关API要记得抛弃this,避免走弯路。

----- 看完啦别忘记点赞哟,您的肯定就是对我最大的支持 END -----

关注我,不迷路

如果任何疑问的可以在评论区留言,还可以加QQ群交流:568984539,加群备注‘地区-名字-技术类型’。

更多前端等相关知识可关注我个人博客:https://blog.csdn.net/qq_42961150?spm=1011.2124.3001.5343

个人作品收藏:https://mp.weixin.qq.com/s/8hZjCRfjcFuSk-YRzRUn6g

相关文章:

  • jq实现拖拽功能-解决滚动条引起的偏差
  • JavaScript类型识别
  • 前端页面跳转的6大类方法及其使用场景特性分析
  • [saiku] olap数据源管理
  • uniapp开发:瀑布流 灵活配置 简单易用 兼容vue2vue3小程序、H5、app等多端
  • Chrome浏览器使用Overrides调试线上代码的技巧
  • js查找json数据中的最大值和最小值方法集结
  • CSS3 Border-color
  • uniapp+unicloud开发微信小程序流程
  • 微信小程序解决saveImageToPhotosAlbum:fail invalid file type
  • Cacti 不出图像的解决办法(完整版)
  • 我的CSDN博客、UNI技术成长之路
  • websoket封装版 参数配置化 开箱即用
  • h5页面js监听页面失去焦点、获取焦点
  • uniapp之vuex在vue2和vue3两种模式下前端工程化动态导入文件
  • Google 是如何开发 Web 框架的
  • [ JavaScript ] 数据结构与算法 —— 链表
  • 【附node操作实例】redis简明入门系列—字符串类型
  • 【知识碎片】第三方登录弹窗效果
  • CSS 专业技巧
  • Leetcode 27 Remove Element
  • Nacos系列:Nacos的Java SDK使用
  • Python - 闭包Closure
  • Redis 懒删除(lazy free)简史
  • Sublime Text 2/3 绑定Eclipse快捷键
  • vue-router 实现分析
  • vue数据传递--我有特殊的实现技巧
  • 机器学习学习笔记一
  • 基于axios的vue插件,让http请求更简单
  • 聚簇索引和非聚簇索引
  • 驱动程序原理
  • 一个JAVA程序员成长之路分享
  • 一些css基础学习笔记
  • MyCAT水平分库
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • ​油烟净化器电源安全,保障健康餐饮生活
  • (6)STL算法之转换
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第2节(共同的基类)
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (五)大数据实战——使用模板虚拟机实现hadoop集群虚拟机克隆及网络相关配置
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (转)大型网站架构演变和知识体系
  • (转)利用ant在Mac 下自动化打包签名Android程序
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .NET CORE 2.0发布后没有 VIEWS视图页面文件
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法
  • .NET国产化改造探索(一)、VMware安装银河麒麟
  • @Autowired和@Resource装配
  • @KafkaListener注解详解(一)| 常用参数详解
  • @vue/cli 3.x+引入jQuery
  • [20150904]exp slow.txt
  • [Ariticle] 厚黑之道 一 小狐狸听故事
  • [AutoSAR 存储] 汽车智能座舱的存储需求
  • [BZOJ1040][P2607][ZJOI2008]骑士[树形DP+基环树]