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

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

获取不到dom元素:

最后查资料发现:

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

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

另外的办法说明:

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

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

相关推荐
光影少年6 小时前
如何实现RN 多环境、多渠道打包
前端·react native·react.js
闲坐含香咀翠6 小时前
百万行数据透视表,我是怎么把 Vue 响应式开销砍到零的
前端·vue.js·性能优化
xiaopang6 小时前
小红书小组件(miniwidget)开发实战:单页面viewState切换架构
前端
labixiong6 小时前
告别scroll 监听:CSS 滚动驱动动画,主线程堵死也仍跟手
前端·css·html
用户302822530686 小时前
别让 Agent 被 Webhook 叫醒就开工:实现一个幂等启动层
javascript
云析赢指标公式网46 小时前
文华WH6布林轨道均线强弱共振指标公式
前端·算法
许彰午6 小时前
34-安全复盘96个问题
前端·vue.js·安全
妙码生花7 小时前
PHP 各框架下和 Go 的性能比较
前端·后端·go
Csvn7 小时前
TypeScript 类型性能:让类型体操不再卡死编译器
前端
万少7 小时前
等不到 Apple 的折叠 iPhone,我用 DeepV4.1Flash + workBuddy 一句话自己造了一台
前端·javascript·后端