nvue页面剪贴板失效主因是ios未开manifest.json「剪贴板」权限且未云打包、调用不在用户点击同步上下文、或传入含零宽字符/html的非纯字符串。

uni-app 的 nvue 页面剪贴板失效,90% 不是 API 调用错了,而是 iOS 原生权限没开、云打包没做、或调用时机踩了系统硬性限制——nvue 是原生渲染(Weex 引擎),和 Vue 页面的 WebView 完全两套机制,不能套用同一套写法。
为什么 nvue 页面调用 uni.setClipboardData / uni.getClipboardData 没反应
nvue 页面运行在原生层,剪贴板能力依赖 iOS/Android 系统原生 API,但 uni-app 默认不自动申请对应权限。常见现象包括:控制台无报错、success/fail 回调都不触发、返回空字符串、或直接静默失败。
- iOS 真机必须在
manifest.json中勾选「剪贴板」权限,且**必须重新云打包**(仅本地运行或 HBuilderX 调试器无效) - Android 部分厂商(华为、小米)会拦截非前台/非用户手势上下文的剪贴板访问,导致
uni.getClipboardData卡在 pending 状态 - nvue 不支持 H5 的
navigator.clipboard,也不能 fallback 到document.execCommand(该 API 在原生环境根本不存在) - 误把 nvue 当成 Vue 页面,在
onLoad或onShow里直接读取剪贴板 → 系统直接拒绝,iOS 尤其严格
nvue 页面剪贴板必须满足的三个硬性条件
nvue 的剪贴板不是“写了就能用”,而是受平台级规则强约束,三者缺一不可:

