记录一下前端H5的复制功能在ios端的兼容性问题

简介: 记录一下前端H5的复制功能在ios端的兼容性问题

问题1

通过document.execCommand('copy');方法调用复制功能,在ios端无效。

解决办法:

利用copy-to-clipboard库实现复制


问题2

ios端复制,不支持点击复制功能,先异步请求后台数据,再复制后台返回的异步数据。简而言之就是,ios的复制方法,不能复制异步数据,只能复制同步数据。


如下示例:

点击“复制链接”按钮,先调用后端接口获取数据、再复制数据,这样ios是不能复制异步数据的

<divclassName="copy-btn"onClick={this.copyUrl}>复制链接</div>// 点击复制按钮copyUrl=async () => {
constpostData= {
expire: this.state.whichTagExpire,
tagId: this.state.whichTagIdSelected    }
constpath='/tag/getUrl';
// 获取异步数据constres=awaitHttp.post(path, postData);
// 复制数据copy(res.data);
  }

解决办法:

提前获取异步数据,点击“复制链接”按钮,就只执行复制,而不请求后台接口

<divclassName="copy-btn"onClick={this.copyUrl}>复制链接</div>// 提前获取异步数据,并存储到state中asynccomponentDidMount() {
constpostData= {
expire: this.state.whichTagExpire,
tagId: this.state.whichTagIdSelected    }
constpath='/tag/getUrl';
constres=awaitHttp.post(path, postData);
this.setState({
url: res.data  })
  }
// 点击复制按钮,直接调用copy,复制urlcopyUrl= () => {
copy(this.state.url);
  }


目录
相关文章
|
2月前
|
移动开发 前端开发 Android开发
mPaaS 常见问题之移动开发平台 mpaas的H5 前端 Kylin 框架引入vant后包特别大如何解决
mPaaS(移动平台即服务,Mobile Platform as a Service)是阿里巴巴集团提供的一套移动开发解决方案,它包含了一系列移动开发、测试、监控和运营的工具和服务。以下是mPaaS常见问题的汇总,旨在帮助开发者和企业用户解决在使用mPaaS产品过程中遇到的各种挑战
110 0
|
2月前
|
前端开发 数据可视化 JavaScript
前端图形学实战: 100行代码实现几何画板的撤销重做等功能(vue3 + vite版)
前端图形学实战: 100行代码实现几何画板的撤销重做等功能(vue3 + vite版)
52 0
|
2月前
|
前端开发 Android开发 iOS开发
【Flutter前端技术开发专栏】Flutter在Android与iOS上的性能对比
【4月更文挑战第30天】Flutter 框架实现跨平台移动应用,通过一致的 UI 渲染(Skia 引擎)、热重载功能和响应式框架提高开发效率和用户体验。然而,Android 和 iOS 的系统差异、渲染机制及编译过程影响性能。性能对比显示,iOS 可能因硬件优化提供更流畅体验,而 Android 更具灵活性和广泛硬件支持。开发者可采用代码、资源优化和特定平台优化策略,利用性能分析工具提升应用性能。
【Flutter前端技术开发专栏】Flutter在Android与iOS上的性能对比
|
8天前
|
缓存 负载均衡 前端开发
SSMP整合案例第八步 前端页面的分页功能完善与维护和实现条件查询
SSMP整合案例第八步 前端页面的分页功能完善与维护和实现条件查询
10 1
|
7天前
|
前端开发 JavaScript API
Python前端与后端的完美融合
【6月更文挑战第20天】文章探讨全栈开发趋势,指出Python因其简洁语法和丰富生态在全栈领域受青睐。讲解全栈概念,强调Python的易学性、广泛适用性和高开发效率。通过Flask和HTML/JS示例展示前后端融合,介绍数据库集成、前端扩展技术及自动化测试。强调安全性、性能优化和社区资源的重要性,鼓励开发者持续学习和实践,以应对全栈开发中的挑战。
10 0
|
15天前
|
算法 前端开发 安全
面试官:前端加密怎么做?这,这,这不是后端的活儿吗?
前端加密技术概述: 前端加密主要用来保护数据在传输过程中的安全,但因浏览器环境开放性,仅能提供有限的安全性,真正安全策略需结合服务器端加密和安全协议。
|
2月前
|
JavaScript 前端开发 NoSQL
构建基于Node.js的全栈应用:从前端到后端的完整指南
【5月更文挑战第24天】本文是关于使用Node.js构建全栈应用的指南,涵盖前端(React或Vue)、后端(Node.js + Express)和数据库(MongoDB)的选型与实现。文章介绍了项目结构、前端组件化开发、后端API接口编写、前后端联调及部署上线的注意事项,帮助读者掌握全栈开发流程。
|
2月前
|
Android开发 数据安全/隐私保护 iOS开发
ios和安卓测试包发布网站http://fir.im的注册与常用功能
ios和安卓测试包发布网站http://fir.im的注册与常用功能
30 0
ios和安卓测试包发布网站http://fir.im的注册与常用功能
|
2月前
|
Web App开发 JavaScript 前端开发
【专栏】如何使用 Chrome DevTools 的断点功能提升前端调试效率, 花式打断点
【4月更文挑战第29天】本文介绍了如何使用 Chrome DevTools 的断点功能提升前端调试效率。从基本的行断点和函数断点,到更高级的条件断点、DOM 断点、XHR 断点和事件断点,以及代码注入断点,详细阐述了各种断点的设置和应用场景。通过断点调试实战案例,如异步操作、复杂逻辑和性能优化,展示断点在解决实际问题中的重要作用。掌握这些技巧能有效提高开发质量和效率。
|
2月前
|
存储 缓存 负载均衡
跨越界限:前端与后端的协同优化
在当今快节奏的技术环境下,前端与后端的协同优化成为了提升应用性能和用户体验的关键。本文探讨了如何通过前后端的紧密合作,实现更高效的数据传输、渲染优化以及系统性能提升,从而构建出更加流畅、响应迅速的应用程序。