当前位置: 主页 > 日志 > 个人日记 > 文章

iOS 微信内H5 uni.setClipboardData复制文本到剪贴板失败

发布时间: 2024-10-29 14:53:19 作者: 王乐园 浏览次数: 132

实际效果 安卓:微信内H5、外部浏览器均正常复制 ,iOS:外部浏览器成功,微信内H5 失败

实际效果

安卓:微信内H5、外部浏览器均正常复制

iOS:外部浏览器成功,微信内H5 失败


原因

iOS 微信内H5 ,禁止在异步函数中 复制内容到用户剪贴板。同步情况下是可以的。


解决方案

1. 将uni.setClipboardData复制内容到剪贴板代码,移动到异步函数之外,比如不能放在请求的then函数中。

2. 或者 直接再添加一个异步

getShortLink(options).then((res) => {
                    console.log('复制链接:', res)
                    uni.hideLoading();
                    if (res.data.code == 200) {
                        setTimeout(() => {
                        uni.setClipboardData({
                            data: res.data.data.link_url,
                            success: function() {
                                uni.showToast({
                                    title: '复制成功',
                                    icon: 'none'
                                })
                            }
                        })
                        }, 100);
                    }else{
                        uni.showToast({
                        	title: res.data.message,
                        	icon: 'none'
                        })
                    }
                })

本站文章均为原创,欢迎转载,转载请以链接形式注明出处

本文地址: