uniapp使用vue3的ref获取dom元素出现undefined

在我的代码里面,已经通过ref来定义想要获取的dom了,但是最后在页面渲染完之后,打印这个dom发现竟然是undefined:

获取不到dom元素:

最后查资料发现:

小程序中,uniapp的ref要绑定在子组件中才能被获取,如果绑定在view,是获取不了的,你得把业务写在一个组件来引用才行。h5则没有这种情况。

暂时没有好的解决办法,因为我用到了html2canvas这个依赖包,需要将页面转化为一张图片保存,那么微信小程序获取不到dom元素,就只能使用另外的办法。

另外的办法说明:

1.单独部署一个h5页面,然后在h5页面中生成图片,并将图片存储到服务器中,然后返回给下载地址。

2.本地自己使用canvas画一个你需要的图片,但是难度估计非常大

相关推荐
Hilaku2 小时前
作为面试官,我最怕遇到什么样的候选人?
前端·javascript·程序员
TiDi3 小时前
Pinia优化重复请求
前端
web3d5203 小时前
01-用 Leafletjs 10 分钟搭一张水利一张图(Vue3 + Vite 实战)
前端·javascript
晚安日记wanna3 小时前
Vue2 的 defineProperty 差在哪四层追问筛掉九成候选人
前端·vue.js·面试
TiDi3 小时前
吸顶导航交互实现
前端
kisshyshy3 小时前
从Props透传到自定义Hook:系统梳理React跨层级通信与逻辑复用
前端·架构·代码规范
yume_sibai3 小时前
05-Flutter实战项目
前端·flutter
涛涛ing4 小时前
React 19.3 发布,但真正的赢家是 StyleX:当 AI 成为框架的“第一用户”
前端
zhangminghuan4 小时前
Vue vs React 实战拓展面试题|摒弃基础八股,聚焦业务开发核心难点(2026前端进阶)
前端
IT_陈寒4 小时前
Redis主从切换竟让业务卡了3秒?这个坑我替你踩了
前端·人工智能·后端